*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: var(--ipro-font-body);
  font-size: var(--ipro-text-base);
  line-height: var(--ipro-leading-normal);
  color: var(--ipro-ink-900);
  background: var(--ipro-surface-50);
  -webkit-font-smoothing: antialiased;
}
img, svg { display: block; max-width: 100%; }
button { font-family: inherit; }
.ipro-container {
  width: 100%;
  max-width: 1280px;
  margin-inline: auto;
  padding-inline: var(--ipro-pad-x);
}
.ipro-container--bleed { max-width: none; }
.ipro-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--ipro-space-4);
}
@media (min-width: 640px) {
  .ipro-grid { grid-template-columns: repeat(8, 1fr); gap: var(--ipro-space-5); }
}
@media (min-width: 1024px) {
  .ipro-grid { grid-template-columns: repeat(12, 1fr); gap: var(--ipro-space-6); }
}
h1, h2, h3 { font-family: var(--ipro-font-display); font-weight: 700; color: var(--ipro-ink-900); margin: 0; letter-spacing: -0.01em; }
.ipro-display, .ipro-hero h1 {
  font-size: var(--ipro-text-5xl);            
  line-height: 52px;
  font-stretch: var(--ipro-stretch-display);  
  font-variation-settings: "wght" 700;
}
h1 {                                          
  font-size: var(--ipro-text-4xl);            
  line-height: 42px;
  font-stretch: var(--ipro-stretch-display);
  font-variation-settings: "wght" 700;
}
h2 {                                          
  font-size: var(--ipro-text-3xl);            
  line-height: 34px;
  font-weight: 600;
  font-stretch: var(--ipro-stretch-display);
  font-variation-settings: "wght" 600;
}
h3 { font-size: var(--ipro-text-xl); line-height: 28px; font-weight: 600; } 
@media (max-width: 639.98px) {
  .ipro-display, .ipro-hero h1 { font-size: var(--ipro-text-4xl); line-height: 42px; } 
  h1 { font-size: 1.75rem; line-height: 36px; }                                          
}
h4 { font-family: var(--ipro-font-body); font-size: var(--ipro-text-lg); line-height: 1.2; font-weight: 600; margin: 0; color: var(--ipro-ink-900); }
h5 { font-size: var(--ipro-text-base); line-height: 1.2; font-weight: 600; margin: 0; }
h6 { font-size: var(--ipro-text-sm); line-height: 1.2; font-weight: 600; margin: 0; }
p  { margin: 0; }
a  { color: var(--ipro-color-accent-text); text-decoration: none; } 
a:hover { color: var(--ipro-brand-800); text-decoration: underline; }
a:not([class]) {
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.ipro-meganav a,
.ipro-brandrow a,
.ipro-footer a { text-decoration: none; }
:where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 2px solid var(--ipro-brand-600);
  outline-offset: 2px;
  border-radius: 2px;
}
main[tabindex="-1"]:focus { outline: none; }
.ipro-footer :focus-visible,
.ipro-mobile-nav :focus-visible { outline-color: var(--ipro-laiton-300); }
.ipro-eyebrow {
  font-family: var(--ipro-font-body);
  font-size: var(--ipro-text-eyebrow);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ipro-brand-600);
}
.ipro-mono { font-family: var(--ipro-font-mono); font-variant-numeric: tabular-nums; }
.ipro-text-small { font-size: var(--ipro-text-sm); line-height: 1.48; letter-spacing: 0.02em; }
.ipro-header {
  background: var(--ipro-surface-0);
  border-bottom: 1px solid var(--ipro-line-200);
  position: sticky; top: 0; z-index: var(--ipro-z-sticky);
}
html { scroll-padding-top: 76px; }
.ipro-header__nav { position: relative; z-index: 1; }
body.admin-bar .ipro-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .ipro-header { top: 46px; } }
.ipro-brandrow {
  display: grid; grid-template-columns: auto auto auto 1fr; align-items: center;
  min-height: 68px; gap: var(--ipro-space-4);
}
@media (max-width: 1279px) { .ipro-brandrow { grid-template-columns: 1fr auto; } }
.ipro-logo {
  display: inline-flex; align-items: center; gap: 0;
  font-family: var(--ipro-font-display); font-weight: 500;
  font-size: 1.15rem; line-height: 1; letter-spacing: 0.01em;
  text-transform: uppercase; font-stretch: 100%;
  text-decoration: none; color: var(--ipro-vetiver-700); justify-self: start;
}
.ipro-logo:hover { text-decoration: none; }
.ipro-logo__word { color: inherit; }
.ipro-logo__num { color: var(--ipro-laiton-700); }
.ipro-logo--invert { color: var(--ipro-on-dark-full); }
.ipro-logo--invert .ipro-logo__num { color: var(--ipro-laiton-300); }
.ipro-logo--sm { font-size: 0.95rem; }
.ipro-meganav { display: none; }
@media (min-width: 1280px) {
  .ipro-meganav { display: flex; gap: var(--ipro-space-1); justify-self: start; }
  .ipro-meganav::before {
    content: "";
    flex: none;
    align-self: center;
    width: 1px;
    height: 24px;
    background: var(--ipro-line-200);
  }
}
.ipro-meganav__item { position: static; }
.ipro-meganav__trigger {
  display: inline-flex; align-items: center; gap: 6px;
  min-height: 44px; padding: 0 14px;
  background: transparent; border: 0; cursor: pointer;
  color: var(--ipro-ink-700); font-weight: 400; font-size: var(--ipro-text-base);
  font-family: inherit; white-space: nowrap; border-radius: var(--ipro-radius-md);
  position: relative; 
}
.ipro-meganav__trigger:hover,
.ipro-meganav__trigger[aria-expanded="true"] { color: var(--ipro-vetiver-700); }
.ipro-meganav__chevron {
  width: 16px; height: 16px;
  color: var(--ipro-ink-500);
  transition:
    transform var(--ipro-transition-base) var(--ipro-easing-standard),
    color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-meganav__trigger:hover .ipro-meganav__chevron,
.ipro-meganav__trigger:focus-visible .ipro-meganav__chevron,
.ipro-meganav__trigger[aria-expanded="true"] .ipro-meganav__chevron { color: inherit; }
.ipro-meganav__trigger[aria-expanded="true"] .ipro-meganav__chevron { transform: rotate(180deg); }
.ipro-meganav__trigger::after {
  content: ""; position: absolute; left: 12px; right: 12px; bottom: 4px; height: 3px;
  background: var(--ipro-nav-couleur, var(--ipro-laiton-500)); opacity: 0;
  transition: opacity var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-meganav__item[data-panel="locaux-commerciaux"]  { --ipro-nav-couleur: var(--ipro-nav-locaux-commerciaux); }
.ipro-meganav__item[data-panel="bureaux"]             { --ipro-nav-couleur: var(--ipro-nav-bureaux); }
.ipro-meganav__item[data-panel="entrepots-activites"] { --ipro-nav-couleur: var(--ipro-nav-entrepots-activites); }
.ipro-meganav__item[data-panel="fonds-commerce"]      { --ipro-nav-couleur: var(--ipro-nav-fonds-commerce); }
.ipro-meganav__item[data-panel="terrains"]            { --ipro-nav-couleur: var(--ipro-nav-terrains); }
.ipro-meganav__trigger:hover::after,
.ipro-meganav__trigger:focus-visible::after,
.ipro-meganav__trigger[aria-expanded="true"]::after { opacity: 1; }
.ipro-megapanel {
  position: absolute; top: calc(100% + var(--ipro-space-1)); left: 0; right: 0;
  pointer-events: none;
  --ipro-megapanel-gutter: var(--ipro-space-8, 48px);
}
.ipro-megapanel > .ipro-container {
  pointer-events: auto;
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-200);
  border-top: 3px solid var(--ipro-nav-couleur, var(--ipro-line-100));
  border-radius: var(--ipro-radius-lg);
  box-shadow: var(--ipro-shadow-md);
  padding-block: var(--ipro-space-6) var(--ipro-space-2);
}
.ipro-megapanel[hidden] { display: none; }
.ipro-megapanel__head {
  display: flex; align-items: center; gap: var(--ipro-space-2);
  margin: 0 0 var(--ipro-space-4);
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-xs); font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--ipro-nav-couleur, var(--ipro-ink-900));
}
.ipro-megapanel__diamond {
  width: 8px; height: 1em; flex: none;
  background: var(--ipro-nav-couleur, var(--ipro-laiton-500));
  border-radius: 1px;
}
.ipro-megapanel__cols {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--ipro-space-6); align-items: start;
}
.ipro-megapanel--natures > .ipro-container {
  max-width: calc(840px + 2 * var(--ipro-space-8, 48px) + 2 * var(--ipro-pad-x));
  margin-inline: var(--ipro-pad-x) auto;
}
.ipro-megapanel__cols--natures {
  grid-template-columns: repeat(3, minmax(0, 280px));
  gap: var(--ipro-megapanel-gutter);
}
.ipro-megapanel__cta {
  display: flex; justify-content: center;
  margin-top: var(--ipro-space-3);
  padding-top: var(--ipro-space-3);
  border-top: 1px solid var(--ipro-line-100);
  border-top-color: color-mix(in srgb, var(--ipro-nav-couleur, var(--ipro-line-100)) 38%, transparent);
}
.ipro-megapanel--natures > .ipro-container > .ipro-megapanel__cta {
  flex: 0 0 calc((100% - 2 * var(--ipro-megapanel-gutter)) / 3);
  justify-content: flex-start;
}
.ipro-megapanel__coltitle {
  margin: 0 0 var(--ipro-space-1); padding-bottom: var(--ipro-space-2);
  border-bottom: 1px solid var(--ipro-line-100);
  border-bottom-color: color-mix(in srgb, var(--ipro-nav-couleur, var(--ipro-line-100)) 38%, transparent);
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-xs); font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase; color: var(--ipro-ink-500);
}
.ipro-megapanel__list { list-style: none; margin: 0; padding: 0; }
.ipro-megapanel__link {
  display: flex; align-items: center; gap: var(--ipro-space-2);
  min-height: 40px;
  color: var(--ipro-ink-900); font-size: var(--ipro-text-sm); font-weight: 500;
  border-radius: var(--ipro-radius-sm);
}
.ipro-megapanel__link:hover { color: var(--ipro-nav-couleur, var(--ipro-vetiver-700)); }
.ipro-megapanel__link[aria-current="page"] { color: var(--ipro-nav-couleur, var(--ipro-vetiver-700)); font-weight: 600; }
.ipro-megapanel__zonename { flex: none; font-weight: 600; }
.ipro-megapanel__communes {
  min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-xs);
  font-weight: 400; color: var(--ipro-ink-500); letter-spacing: 0.02em;
}
.ipro-megapanel__escape {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center;
  min-height: 44px; margin-top: var(--ipro-space-1); padding-top: var(--ipro-space-2);
  border-top: 1px dashed var(--ipro-line-200);
  border-top-color: color-mix(in srgb, var(--ipro-nav-couleur, var(--ipro-line-200)) 38%, transparent);
  color: var(--ipro-color-accent-text); font-size: var(--ipro-text-sm); font-weight: 600;
}
.ipro-megapanel__escape small {
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-xs); font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--ipro-ink-500);
}
.ipro-megapanel__escape:hover { color: var(--ipro-vetiver-800); }
@media (min-width: 1280px) {
  .ipro-megapanel__aside {
    padding-left: var(--ipro-space-6);
    border-left: 1px solid var(--ipro-line-100);
    border-left-color: color-mix(in srgb, var(--ipro-nav-couleur, var(--ipro-line-100)) 24%, transparent);
  }
}
.ipro-megapanel__aside .ipro-megapanel__list + .ipro-megapanel__coltitle--second {
  margin-top: var(--ipro-space-5);
}
.ipro-megapanel__link--service {
  flex-direction: column; align-items: flex-start; justify-content: center;
  gap: 2px; min-height: 44px; padding: var(--ipro-space-1) 0;
}
.ipro-megapanel__servicename { font-weight: 600; }
.ipro-megapanel__aside .ipro-megapanel__list .ipro-megapanel__link--service {
  gap: 2px;
  padding-block: var(--ipro-space-2);
}
.ipro-megapanel__servicenote {
  font-family: var(--ipro-font-body); font-size: var(--ipro-text-xs); font-weight: 400;
  line-height: var(--ipro-leading-snug); letter-spacing: normal; color: var(--ipro-ink-500);
}
.ipro-megapanel__link--avenir { color: var(--ipro-ink-500); cursor: default; }
.ipro-megapanel__avenirtag {
  flex: none; margin-left: auto; padding-left: var(--ipro-space-2);
  font-family: var(--ipro-font-data); font-size: 9px; font-style: normal; font-weight: 500;
  letter-spacing: 0.06em; text-transform: uppercase; color: var(--ipro-ink-500);
  white-space: nowrap;
}
.ipro-megapanel__footer {
  margin-top: var(--ipro-space-4); padding-top: var(--ipro-space-3);
  border-top: 1px solid var(--ipro-line-100);
  border-top-color: color-mix(in srgb, var(--ipro-nav-couleur, var(--ipro-line-100)) 38%, transparent);
}
.ipro-megapanel__all {
  display: inline-flex; align-items: center; gap: 6px;
  color: var(--ipro-color-accent-text); font-weight: 600; font-size: var(--ipro-text-sm);
}
.ipro-megapanel__all svg { width: 16px; height: 16px; }
.ipro-megapanel__all:hover { color: var(--ipro-vetiver-800); }
.ipro-brandrow__actions { justify-self: end; display: flex; align-items: center; gap: var(--ipro-space-3); }
.ipro-brandrow__login {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; flex: none;
  color: var(--ipro-ink-700);
  border: 1px solid var(--ipro-line-200);
  border-radius: var(--ipro-radius-sm);
  background: var(--ipro-surface-0);
  transition: background var(--ipro-transition-fast) var(--ipro-easing-standard),
              border-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-brandrow__login:hover {
  color: var(--ipro-vetiver-700);
  border-color: var(--ipro-vetiver-700);
  background: var(--ipro-surface-50);
}
.ipro-brandrow__login svg { width: 20px; height: 20px; }
.ipro-brandrow__account { position: relative; display: inline-flex; flex: none; }
.ipro-brandrow__account.is-open .ipro-brandrow__login {
  color: var(--ipro-vetiver-700);
  border-color: var(--ipro-vetiver-700);
  background: var(--ipro-surface-50);
}
.ipro-account-menu {
  position: absolute; top: calc(100% + var(--ipro-space-1)); right: 0;
  z-index: var(--ipro-z-dropdown);
  min-width: 224px;
  padding: var(--ipro-space-2);
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-200);
  border-radius: var(--ipro-radius-md);
  box-shadow: var(--ipro-shadow-md);
}
.ipro-account-menu::before {
  content: ""; position: absolute; left: 0; right: 0;
  top: calc(-1 * var(--ipro-space-1) - 1px); height: calc(var(--ipro-space-1) + 1px);
}
.ipro-account-menu[hidden] { display: none; }
.ipro-account-menu__who {
  margin: 0 0 var(--ipro-space-1);
  padding: var(--ipro-space-2) var(--ipro-space-3);
  font-size: var(--ipro-text-sm); line-height: var(--ipro-leading-snug);
  color: var(--ipro-ink-700);
  border-bottom: 1px solid var(--ipro-line-200);
  max-width: 280px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.ipro-account-menu__link {
  display: flex; align-items: center; gap: var(--ipro-space-2);
  min-height: 40px; padding: var(--ipro-space-2) var(--ipro-space-3);
  font-size: var(--ipro-text-sm); line-height: var(--ipro-leading-snug);
  color: var(--ipro-ink-900);
  border-radius: var(--ipro-radius-sm);
  white-space: nowrap;
  transition: background var(--ipro-transition-fast) var(--ipro-easing-standard),
              color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-account-menu__link:hover { background: var(--ipro-surface-50); color: var(--ipro-vetiver-700); }
.ipro-account-menu__link svg { width: 18px; height: 18px; flex: none; }
.ipro-brandrow__burger {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; padding: 0;
  background: transparent; border: 0; color: var(--ipro-ink-900); cursor: pointer;
}
.ipro-brandrow__burger svg { width: 24px; height: 24px; }
@media (min-width: 1280px) {
  .ipro-brandrow__burger { display: none; }
}
.ipro-brandrow__tools {
  display: none;
  align-items: center; justify-content: center;
  width: 44px; height: 44px; flex: none; padding: 0;
  color: var(--ipro-ink-700);
  border: 1px solid var(--ipro-line-200);
  border-radius: var(--ipro-radius-sm);
  background: var(--ipro-surface-0);
  cursor: pointer;
  transition: background var(--ipro-transition-fast) var(--ipro-easing-standard),
              border-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
@media (min-width: 1280px) {
  .ipro-brandrow__tools { display: inline-flex; }
}
.ipro-brandrow__tools:hover {
  color: var(--ipro-vetiver-700);
  border-color: var(--ipro-vetiver-700);
  background: var(--ipro-surface-50);
}
.ipro-brandrow__tools svg { width: 22px; height: 22px; }
.ipro-carrousel-hero { position: relative; }
.ipro-carrousel-hero,
.ipro-promo {
  margin: var(--ipro-space-5);
  border-radius: var(--ipro-radius-lg);
  overflow: hidden;
}
.ipro-carrousel-hero .splide {
  aspect-ratio: auto;
  width: 100%;
  height: min(calc(33.3333vw + 50px), 690px);
  min-height: 180px;
}
.ipro-carrousel-hero .splide__track,
.ipro-carrousel-hero .splide__list,
.ipro-carrousel-hero .splide__slide { height: 100%; }
.ipro-carrousel-hero .ipro-carrousel__photos {
  height: 100%;
  width: 100%;
  aspect-ratio: auto;
}
@media (min-width: 1024px) {
  .ipro-carrousel-hero .ipro-carrousel__accroches { bottom: 0; top: auto; padding-bottom: 112px; }
  .ipro-carrousel-hero .ipro-carrousel__cta { bottom: 64px; top: auto; }
  .ipro-carrousel-hero .splide__pagination { bottom: 56px; }
  .ipro-carrousel-hero + .ipro-quicksearch {
    margin-top: -48px;
    position: relative;
    z-index: 3;
  }
}
.ipro-carrousel-hero .splide__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
@media (max-width: 639.98px) {
  .ipro-carrousel-hero .splide__arrow { display: none; }
}
.ipro-quicksearch { background: var(--ipro-surface-0); border-bottom: 1px solid var(--ipro-line-100); padding: var(--ipro-space-3) 0; }
.ipro-quicksearch__form { display: flex; align-items: stretch; gap: var(--ipro-space-3); flex-wrap: wrap; }
.ipro-quicksearch__field { flex: 1 1 180px; min-width: 150px; }
.ipro-quicksearch__submit,
.ipro-quicksearch__filtre { flex: none; }
@media (max-width: 768px) {
  .ipro-quicksearch__form { flex-direction: column; align-items: stretch; }
  .ipro-quicksearch__field { flex: initial; }
  .ipro-quicksearch__submit,
  .ipro-quicksearch__filtre { width: 100%; }
}
.ipro-quicksearch { padding-block: var(--ipro-section-y); }
.ipro-qs {
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-lg);
  padding: var(--ipro-space-4);
}
.ipro-qs__top {
  display: flex; flex-wrap: wrap; align-items: center;
  justify-content: space-between; gap: var(--ipro-space-3) var(--ipro-space-5);
  margin-bottom: var(--ipro-space-3);
}
.ipro-qs__all {
  display: flex; align-items: center; gap: var(--ipro-space-2);
  max-width: 230px;
  font-size: var(--ipro-text-sm); line-height: 1.35; color: var(--ipro-ink-700);
}
.ipro-qs__all-icon { flex-shrink: 0; display: block; line-height: 0; color: var(--ipro-vetiver-600); }
.ipro-qs__all-icon svg { width: 20px; height: 20px; }
.ipro-qs .ipro-segment__label { min-height: 34px; padding-inline: 18px; }
.ipro-qs .ipro-qs__ops { margin: 0; }
.ipro-qs__fields { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--ipro-space-4); }
.ipro-qs__field { flex: 1 1 150px; min-width: 177px; margin: 0; display: flex; flex-direction: column; gap: var(--ipro-space-2); }
.ipro-qs__field--type   { flex: 1.3 1 190px;  min-width: 220px; } 
.ipro-qs__field--wide   { flex: 1.45 1 205px; min-width: 231px; } 
.ipro-qs__field--medium { flex: 1.2 1 175px;  min-width: 199px; } 
.ipro-qs__field--narrow { flex: 0.85 1 135px; min-width: 147px; } 
.ipro-qs__label { font-size: var(--ipro-form-label-size); color: var(--ipro-ink-700); }
.ipro-qs__field > label { margin-bottom: 0; }
.ipro-qs__wrap { position: relative; display: flex; align-items: center; }
.ipro-qs__wrap > .ipro-icon {
  position: absolute; left: var(--ipro-space-3);
  color: var(--ipro-ink-500); pointer-events: none;
}
.ipro-qs__wrap > .ipro-select { padding-left: 44px; }
.ipro-qs__more,
.ipro-qs__submit { flex: none; height: var(--ipro-form-field-height); }
.ipro-qs__more {
  display: inline-flex; align-items: center; justify-content: center;
  gap: var(--ipro-space-2);
  font-size: var(--ipro-text-base); font-weight: 400; color: var(--ipro-ink-900);
}
.ipro-qs__more-txt { text-decoration: underline; text-underline-offset: 3px; }
.ipro-qs__more svg { color: var(--ipro-vetiver-600); }
@media (max-width: 768px) {
  .ipro-qs { padding: var(--ipro-space-5); }
  .ipro-qs__fields { flex-direction: column; align-items: stretch; }
  .ipro-qs__field,
  .ipro-qs__field--type,
  .ipro-qs__field--wide,
  .ipro-qs__field--medium,
  .ipro-qs__field--narrow { flex: initial; min-width: 0; }
  .ipro-qs__submit { width: 100%; }
  .ipro-qs__more { justify-content: center; }
  .ipro-qs .ipro-segment__label { min-height: 44px; }
}
@media (max-width: 480px) {
  .ipro-qs .ipro-segment:has(.ipro-segment__opt + .ipro-segment__opt + .ipro-segment__opt) { display: flex; width: 100%; }
  .ipro-qs .ipro-segment:has(.ipro-segment__opt + .ipro-segment__opt + .ipro-segment__opt) .ipro-segment__opt { flex: 1 1 auto; }
  .ipro-qs .ipro-segment:has(.ipro-segment__opt + .ipro-segment__opt + .ipro-segment__opt) .ipro-segment__label {
    width: 100%; padding-inline: 10px; white-space: normal; text-align: center; line-height: 1.15;
  }
}
.ipro-qs__repli { display: none; }
@media (max-width: 768px) {
  .ipro-quicksearch.is-repliable { padding-block: var(--ipro-space-4); }
  .is-repliable .ipro-qs { padding: var(--ipro-space-3); }
  .is-repliable .ipro-qs__repli { display: flow-root; }
  .is-repliable .ipro-qs__form:not(:target):not(.is-ouvert),
  .is-repliable .ipro-qs__form.is-pilote:not(.is-ouvert) { display: none; }
  .is-repliable .ipro-qs__form {
    margin-top: var(--ipro-space-4); padding-top: var(--ipro-space-4);
    border-top: 1px solid var(--ipro-line-100);
  }
  .is-repliable .ipro-qs__bascule {
    float: right; gap: var(--ipro-space-2);
    height: 48px; padding: 0 var(--ipro-space-3);
    margin: 0 0 var(--ipro-space-2) var(--ipro-space-3);
    text-decoration: none;
  }
  .ipro-qs__bascule-libelle { display: inline-flex; align-items: center; gap: var(--ipro-space-2); }
  .ipro-qs__bascule-ouvert { display: none; }
  .ipro-qs__bascule-chevron { transition: transform var(--ipro-transition-fast) var(--ipro-easing-standard); }
  .is-repliable .ipro-qs__bascule[aria-expanded="true"],
  .is-repliable .ipro-qs__bascule[aria-expanded="true"]:hover {
    background: var(--ipro-vetiver-700); color: var(--ipro-on-dark-full); border-color: var(--ipro-vetiver-700);
  }
  .ipro-qs__bascule[aria-expanded="true"] .ipro-qs__bascule-chevron { transform: rotate(180deg); }
  .ipro-qs__bascule[aria-expanded="true"] .ipro-qs__bascule-ferme { display: none; }
  .ipro-qs__bascule[aria-expanded="true"] .ipro-qs__bascule-ouvert { display: inline; }
  .ipro-qs__criteres { display: block; margin: 0 0 calc(-1 * var(--ipro-space-2)); padding: 0; list-style: none; }
  .ipro-qs__critere {
    display: inline-flex; align-items: baseline; gap: 4px; vertical-align: top;
    min-height: 28px; padding: 4px var(--ipro-space-2);
    margin: 0 var(--ipro-space-2) var(--ipro-space-2) 0;
    background: var(--ipro-vetiver-50); border: 1px solid var(--ipro-vetiver-300); border-radius: var(--ipro-radius-md);
    font: 500 var(--ipro-text-sm)/1.3 var(--ipro-font-body); color: var(--ipro-vetiver-800);
    white-space: nowrap;
  }
  .ipro-qs__critere-cle { font-weight: 400; color: var(--ipro-ink-700); }
  .ipro-qs__critere .ipro-font-data { font-size: var(--ipro-text-sm); }
  .is-sans-critere .ipro-qs__bascule { float: none; width: 100%; justify-content: space-between; margin: 0; }
}
@media (max-width: 480px) {
  .is-repliable:not(.is-sans-critere) .ipro-qs__bascule-libelle .ipro-icon { display: none; }
}
@media (max-width: 359px) {
  .is-repliable .ipro-qs__bascule { float: none; width: 100%; justify-content: space-between; margin: 0 0 var(--ipro-space-3); }
}
@media (prefers-reduced-motion: reduce) { .ipro-qs__bascule-chevron { transition: none; } }
.ipro-mobile-nav {
  position: fixed; inset: 0; z-index: var(--ipro-z-modal);
  background: var(--ipro-vetiver-900); color: var(--ipro-on-dark-full);
  display: none; flex-direction: column; padding: 0 var(--ipro-pad-x) var(--ipro-space-6);
  overflow-y: auto;
}
.ipro-mobile-nav.is-open { display: flex; }
@media (min-width: 1280px) { .ipro-mobile-nav { display: none !important; } }
.ipro-mobile-nav__head { display: flex; align-items: center; justify-content: space-between; min-height: 56px; }
.ipro-mobile-nav__close {
  width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center;
  background: transparent; border: 0; color: var(--ipro-on-dark-full); cursor: pointer; margin-right: -10px;
}
.ipro-mobile-nav__link {
  display: flex; align-items: center; gap: var(--ipro-space-3);
  min-height: 44px;
  padding: var(--ipro-space-3) 0; color: var(--ipro-on-dark-full); text-decoration: none;
  font-size: var(--ipro-text-lg); border-bottom: 1px solid var(--ipro-on-dark-fill-100);
}
a.ipro-mobile-nav__link:hover { color: var(--ipro-laiton-300); }
.ipro-mobile-nav__grouptitle {
  margin: var(--ipro-space-5) 0 var(--ipro-space-2);
  font-size: var(--ipro-text-xs); font-weight: 700;
  letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--ipro-on-dark-500);
}
.ipro-mobile-nav__list { list-style: none; margin: 0; padding: 0; }
.ipro-mobile-nav__icon { width: 20px; height: 20px; flex: none; color: var(--ipro-on-dark-500); }
a.ipro-mobile-nav__link:hover .ipro-mobile-nav__icon { color: var(--ipro-laiton-300); }
.ipro-mobile-nav__link--fort {
  justify-content: center;
  margin-top: var(--ipro-space-3);
  padding: var(--ipro-space-3) var(--ipro-space-4);
  border-radius: var(--ipro-radius-md);
  border-bottom: 0;
  background: var(--ipro-laiton-300);
  color: var(--ipro-ink-900);
  font-weight: 600;
}
a.ipro-mobile-nav__link--fort:hover { background: var(--ipro-surface-0); color: var(--ipro-ink-900); }
.ipro-mobile-nav__link--fort .ipro-mobile-nav__icon,
a.ipro-mobile-nav__link--fort:hover .ipro-mobile-nav__icon { color: var(--ipro-ink-900); }
.ipro-mobile-nav__link--avenir { color: var(--ipro-on-dark-700); cursor: default; }
.ipro-mobile-nav__soon {
  margin-left: auto;
  padding: 2px 6px;
  border-radius: var(--ipro-radius-sm);
  background: var(--ipro-on-dark-fill-100);
  border: 1px solid var(--ipro-on-dark-fill-200);
  font-size: var(--ipro-text-xs); font-weight: 600;
  color: var(--ipro-on-dark-full);
  white-space: nowrap;
}
.ipro-mobile-nav__accordion { margin: var(--ipro-space-4) 0 0; }
.ipro-mobile-nav__toggle {
  display: flex; align-items: center; justify-content: space-between; width: 100%;
  padding: var(--ipro-space-3) 0;
  background: transparent; border: 0; border-bottom: 1px solid var(--ipro-on-dark-fill-100);
  color: var(--ipro-on-dark-full); font-family: inherit;
  font-size: var(--ipro-text-lg); font-weight: 600; cursor: pointer;
}
.ipro-mobile-nav__chevron {
  width: 20px; height: 20px;
  transition: transform var(--ipro-transition-base) var(--ipro-easing-standard);
}
.ipro-mobile-nav__toggle[aria-expanded="true"] .ipro-mobile-nav__chevron { transform: rotate(180deg); }
.ipro-mobile-nav__sublist { list-style: none; margin: 0; padding: 0 0 var(--ipro-space-2) var(--ipro-space-4); }
.ipro-mobile-nav__sublist[hidden] { display: none; }
.ipro-mobile-nav__sublist .ipro-mobile-nav__link { font-size: var(--ipro-text-base); border-bottom: 0; padding: var(--ipro-space-2) 0; }
.ipro-toolbar {
  position: fixed; inset: 0; z-index: var(--ipro-z-modal);
  display: none;
  background: rgba(32, 35, 31, 0.5); 
}
.ipro-toolbar.is-open { display: block; }
@media (max-width: 1279px) { .ipro-toolbar { display: none !important; } }
.ipro-toolbar__panel {
  position: absolute; inset: 0 auto 0 0;
  width: min(360px, 90vw);
  display: flex; flex-direction: column;
  padding: 0 var(--ipro-space-5) var(--ipro-space-6);
  background: var(--ipro-surface-0);
  box-shadow: 4px 0 24px rgba(32, 35, 31, 0.18);
  overflow-y: auto;
}
.ipro-toolbar__head {
  display: flex; align-items: center; justify-content: space-between;
  min-height: 68px;
}
.ipro-toolbar__title {
  margin: 0;
  font-family: var(--ipro-font-display); font-weight: 600;
  font-size: var(--ipro-text-lg); color: var(--ipro-ink-900);
}
.ipro-toolbar__close {
  width: 44px; height: 44px; padding: 0;
  display: inline-flex; align-items: center; justify-content: center;
  background: transparent; border: 0;
  color: var(--ipro-ink-900); cursor: pointer;
  margin-right: -10px; 
}
.ipro-toolbar__close svg { width: 24px; height: 24px; }
.ipro-toolbar__grouptitle {
  margin: var(--ipro-space-5) 0 var(--ipro-space-3);
  font-size: var(--ipro-text-xs); font-weight: 700;
  letter-spacing: 0.08em; text-transform: uppercase;
  color: var(--ipro-ink-500);
}
.ipro-toolbar__grouptitle::after {
  content: "";
  display: block;
  width: 28px;
  height: 2px;
  margin-top: var(--ipro-space-2);
  background: var(--ipro-laiton-500);
}
.ipro-toolbar__list + .ipro-toolbar__grouptitle {
  margin-top: var(--ipro-space-5);
  padding-top: var(--ipro-space-5);
  border-top: 1px solid var(--ipro-line-100);
}
.ipro-toolbar__list { list-style: none; margin: 0; padding: 0; }
.ipro-toolbar__link {
  display: flex; align-items: center; gap: var(--ipro-space-3);
  min-height: 44px;
  padding: var(--ipro-space-2);
  margin: 0 calc(-1 * var(--ipro-space-2)); 
  border-radius: var(--ipro-radius-md);
  color: var(--ipro-ink-900); text-decoration: none;
  font-size: var(--ipro-text-base);
  transition: background var(--ipro-transition-fast) var(--ipro-easing-standard),
              color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
a.ipro-toolbar__link:hover {
  background: var(--ipro-surface-50);
  color: var(--ipro-vetiver-700);
  text-decoration: none;
}
.ipro-toolbar__icon { width: 20px; height: 20px; flex: none; color: var(--ipro-ink-500); }
a.ipro-toolbar__link:hover .ipro-toolbar__icon { color: var(--ipro-vetiver-700); }
.ipro-toolbar__link--fort {
  margin-top: var(--ipro-space-2);
  background: var(--ipro-vetiver-700);
  color: var(--ipro-on-dark-full);
  font-weight: 600;
  justify-content: center;
}
a.ipro-toolbar__link--fort:hover {
  background: var(--ipro-vetiver-800);
  color: var(--ipro-on-dark-full);
}
.ipro-toolbar__link--fort .ipro-toolbar__icon,
a.ipro-toolbar__link--fort:hover .ipro-toolbar__icon { color: var(--ipro-on-dark-full); }
.ipro-toolbar__link--avenir { color: var(--ipro-ink-500); cursor: default; }
.ipro-toolbar__soon {
  margin-left: auto;
  padding: 2px 6px;
  border-radius: var(--ipro-radius-sm);
  background: var(--ipro-surface-50);
  border: 1px solid var(--ipro-line-200);
  font-size: var(--ipro-text-xs); font-weight: 600;
  color: var(--ipro-ink-700); 
  white-space: nowrap;
}
.ipro-btn--on-dark { background: var(--ipro-laiton-300); color: var(--ipro-ink-900); }
.ipro-btn--on-dark:hover { background: var(--ipro-surface-0); color: var(--ipro-ink-900); }
.ipro-btn--ghost-dark { background: transparent; color: var(--ipro-on-dark-full); border: 1.5px solid var(--ipro-on-dark-fill-200); box-shadow: none; }
.ipro-btn--ghost-dark:hover { background: var(--ipro-on-dark-fill-100); color: var(--ipro-on-dark-full); border-color: var(--ipro-on-dark-fill-200); }
.ipro-footer {
  position: relative;
  background-color: var(--ipro-vetiver-900);
  background-image: repeating-linear-gradient(45deg, var(--ipro-trame-on-dark) 0 1px, transparent 1px 7px);
  color: var(--ipro-on-dark-700);
  margin-top: var(--ipro-space-16);
  border-top: 2px solid var(--ipro-laiton-500); 
}
.ipro-footer a { color: var(--ipro-on-dark-700); font-size: var(--ipro-text-sm); }
.ipro-footer a:hover { color: var(--ipro-on-dark-full); }
.ipro-footer h3 {
  margin: 0 0 var(--ipro-space-3);
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-xs); font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--ipro-on-dark-full);
}
.ipro-footer ul { list-style: none; margin: 0; padding: 0; }
.ipro-footer__main { padding: var(--ipro-space-10) 0 var(--ipro-space-5); }
.ipro-footer__grid {
  display: grid;
  grid-template-columns: 1.5fr repeat(4, 1fr);
  gap: var(--ipro-space-8) var(--ipro-space-6);
}
.ipro-footer h3 { font-size: 14px; line-height: 20px; letter-spacing: 0.02em; }
.ipro-footer__col a,
.ipro-footer__soon { display: block; padding: 4px 0; font-size: 15px; line-height: 24px; }
.ipro-footer__col a:hover { color: var(--ipro-on-dark-full); text-decoration: underline; text-underline-offset: 3px; }
.ipro-footer__soon { color: var(--ipro-vetiver-300); cursor: default; }
.ipro-footer a.ipro-footer__accent { color: var(--ipro-vetiver-300); font-weight: 600; }
.ipro-footer a.ipro-footer__accent:hover { color: var(--ipro-on-dark-full); }
.ipro-footer__sep { height: 1px; margin: var(--ipro-space-3) 0; background: var(--ipro-on-dark-line); list-style: none; }
.ipro-footer__pitch {
  margin: var(--ipro-space-5) 0 0;
  max-width: 34ch;
  font-size: 15px; line-height: 24px;
  color: var(--ipro-on-dark-700);
}
.ipro-footer__preuves { display: grid; gap: var(--ipro-space-4); margin-top: var(--ipro-space-6); }
.ipro-footer__preuve { display: flex; align-items: flex-start; gap: var(--ipro-space-3); }
.ipro-footer__preuve-icon { flex-shrink: 0; line-height: 0; color: var(--ipro-laiton-500); }
.ipro-footer__preuve-icon svg { width: 20px; height: 20px; }
.ipro-footer__preuve-body { display: flex; flex-direction: column; gap: 2px; }
.ipro-footer__preuve-title {
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-xs); font-weight: 600;
  letter-spacing: 0.1em; text-transform: uppercase; color: var(--ipro-on-dark-full);
}
.ipro-footer__preuve-desc { font-size: var(--ipro-text-sm); line-height: 1.45; color: var(--ipro-on-dark-700); }
.ipro-footer__promo {
  display: flex; align-items: center; gap: var(--ipro-space-3);
  margin: var(--ipro-space-5) 0 0;
  padding: var(--ipro-space-3) var(--ipro-space-4);
  border: 1px solid var(--ipro-laiton-500);
  border-radius: var(--ipro-radius-lg);
}
.ipro-footer__promo-icon { flex-shrink: 0; line-height: 0; color: var(--ipro-laiton-300); }
.ipro-footer__promo-icon svg { width: 20px; height: 20px; }
.ipro-footer__promo-body { display: flex; flex-direction: column; gap: 2px; }
.ipro-footer__promo-title { font-size: var(--ipro-text-sm); font-weight: 600; color: var(--ipro-on-dark-full); }
.ipro-footer__promo-note { font-size: var(--ipro-text-xs); color: var(--ipro-on-dark-700); }
.ipro-footer__social-title {
  margin: var(--ipro-space-6) 0 var(--ipro-space-3);
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-xs); font-weight: 600;
  letter-spacing: 0.12em; text-transform: uppercase; color: var(--ipro-on-dark-full);
}
.ipro-footer__social { display: flex; gap: var(--ipro-space-3); }
.ipro-footer__social .ipro-footer__social-item {
  display: grid; place-items: center; padding: 0;
  width: 44px; height: 44px; 
  border: 1px solid var(--ipro-on-dark-line);
  border-radius: var(--ipro-radius-lg);
  color: var(--ipro-on-dark-full);
}
.ipro-footer__social-item svg { width: 20px; height: 20px; }
a.ipro-footer__social-item:hover { background: var(--ipro-on-dark-fill-100); }
.ipro-footer__social-item--soon { color: var(--ipro-vetiver-300); cursor: default; }
.ipro-footer__bottom {
  margin-top: var(--ipro-space-8);
  padding: var(--ipro-space-5) 0;
  border-top: 1px solid var(--ipro-on-dark-line);
  display: flex; flex-wrap: wrap; gap: var(--ipro-space-2) var(--ipro-space-4);
  justify-content: space-between; align-items: baseline;
  font-size: 13px; color: var(--ipro-vetiver-300);
}
.ipro-footer__bottom span:last-child { display: flex; flex-wrap: wrap; gap: 4px var(--ipro-space-3); }
.ipro-footer__bottom a { font-size: 13px; color: var(--ipro-vetiver-300); }
.ipro-footer__bottom a:hover { color: var(--ipro-on-dark-full); }
@media (max-width: 1023px) {
  .ipro-footer__grid { grid-template-columns: repeat(2, 1fr); }
  .ipro-footer__about { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
  .ipro-footer__grid { grid-template-columns: 1fr; }
}
.ipro-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: var(--ipro-space-2);
  height: 44px;
  padding: 0 var(--ipro-space-5);
  background: var(--ipro-brand-700);
  color: var(--ipro-on-dark-full);
  font: 600 var(--ipro-text-sm)/1 var(--ipro-font-body);
  letter-spacing: 0.01em;
  border: 1.5px solid transparent;
  border-radius: var(--ipro-radius-md);
  box-shadow: var(--ipro-shadow-sm);
  cursor: pointer;
  transition: background-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              border-color var(--ipro-transition-fast) var(--ipro-easing-standard);
  text-decoration: none;
  white-space: nowrap;
}
.ipro-btn__fleche { flex: none; width: 18px; height: 18px; fill: currentColor; }
.ipro-btn:hover  { background: var(--ipro-brand-800); color:var(--ipro-on-dark-full); text-decoration: none; }
.ipro-btn:active { background: var(--ipro-brand-900); }
.ipro-btn[disabled],
.ipro-btn:disabled { background: var(--ipro-surface-200); color: var(--ipro-ink-300); cursor: not-allowed; box-shadow: none; }
.ipro-btn--secondary { background: var(--ipro-surface-0); color: var(--ipro-vetiver-600); border: 1.5px solid var(--ipro-vetiver-600); }
.ipro-btn--secondary:hover { background: var(--ipro-brand-50); border-color: var(--ipro-vetiver-600); color: var(--ipro-vetiver-600); }
.ipro-btn--ghost { background: transparent; color: var(--ipro-ink-700); box-shadow: none; padding: 0 var(--ipro-space-4); }
.ipro-btn--ghost:hover { background: var(--ipro-surface-100); box-shadow: none; color: var(--ipro-ink-900); }
.ipro-btn--tertiary { background: transparent; box-shadow: none; border-color: transparent; height: auto; padding: 0; color: var(--ipro-color-accent-text); text-decoration: underline; text-underline-offset: 3px; }
.ipro-btn--tertiary:hover { background: transparent; color: var(--ipro-vetiver-800); text-decoration-thickness: 2px; }
.ipro-btn--danger { background: var(--ipro-danger-600); }
.ipro-btn--danger:hover { background: var(--ipro-danger-700); }
.ipro-btn--block { width: 100%; }
.ipro-btn-icon {
  width: 44px; height: 44px;
  display: inline-flex; align-items: center; justify-content: center;
  background: transparent;
  border: 1px solid var(--ipro-surface-200);
  border-radius: var(--ipro-radius-md);
  color: var(--ipro-ink-700);
  cursor: pointer;
  transition: background-color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-btn-icon:hover { background: var(--ipro-surface-100); color: var(--ipro-ink-900); }
.ipro-label {
  display: block;
  margin-bottom: var(--ipro-space-2);
  font: 500 var(--ipro-text-sm)/1.4 var(--ipro-font-body);
  color: var(--ipro-ink-700);
}
.ipro-select { white-space: nowrap; }
.ipro-input, .ipro-select, .ipro-textarea {
  width: 100%;
  height: 44px;
  padding: 0 var(--ipro-space-3);
  background: var(--ipro-surface-0);
  color: var(--ipro-ink-900);
  font: 400 var(--ipro-text-base)/1.5 var(--ipro-font-body);
  border: 1.5px solid var(--ipro-line-field);
  border-radius: var(--ipro-radius-md);
  transition: border-color var(--ipro-transition-fast) var(--ipro-easing-standard), box-shadow var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-input::placeholder { color: var(--ipro-ink-300); }
.ipro-input:focus-visible, .ipro-select:focus-visible, .ipro-textarea:focus-visible {
  border-color: var(--ipro-brand-700);
  outline: 2px solid var(--ipro-brand-600);
  outline-offset: 2px;
}
.ipro-input[aria-invalid="true"] { border-color: var(--ipro-danger-600); }
.ipro-textarea { height: auto; padding: var(--ipro-space-3); min-height: 96px; resize: vertical; }
.ipro-help { margin-top: var(--ipro-space-2); font: 400 var(--ipro-text-sm)/1.4 var(--ipro-font-body); color: var(--ipro-ink-500); }
.ipro-help--error { color: var(--ipro-danger-600); display: inline-flex; align-items: center; gap: 4px; }
.ipro-form { max-width: var(--ipro-measure-form); margin-inline: auto; }
.ipro-input-group {
  display: flex; align-items: stretch;
  background: var(--ipro-surface-0);
  border: 1.5px solid var(--ipro-line-field);
  border-radius: var(--ipro-radius-md);
  overflow: hidden;
}
.ipro-input-group:focus-within { border-color: var(--ipro-brand-700); outline: 2px solid var(--ipro-brand-600); outline-offset: 2px; }
.ipro-input-group .ipro-input { border: 0; box-shadow: none; }
.ipro-input-group .ipro-input:focus { outline: none; }
.ipro-input-group__icon { display: grid; place-items: center; padding: 0 var(--ipro-space-3); color: var(--ipro-ink-500); }
.ipro-badge {
  display: inline-flex; align-items: center; gap: 4px;
  height: 24px;
  padding: 0 var(--ipro-space-2);
  border-radius: var(--ipro-radius-sm);
  font: 600 var(--ipro-text-xs)/1 var(--ipro-font-body);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
.ipro-badge svg { width: 14px; height: 14px; }
.ipro-badge--nouveaute   { background: var(--ipro-laiton-300);  color: var(--ipro-ink-900); }
.ipro-badge--exclusivite { background: var(--ipro-vetiver-800); color: var(--ipro-on-dark-full); }
.ipro-badge--annonceur-verifie { background: var(--ipro-ink-900);     color: var(--ipro-on-dark-full); }
.ipro-badge--solid.ipro-badge--nouveaute   { background: var(--ipro-laiton-300);  color: var(--ipro-ink-900); }
.ipro-badge--solid.ipro-badge--exclusivite { background: var(--ipro-vetiver-800); color: var(--ipro-on-dark-full); }
.ipro-badge--solid.ipro-badge--annonceur-verifie { background: var(--ipro-ink-900);     color: var(--ipro-on-dark-full); }
.ipro-status { display: inline-flex; align-items: center; gap: var(--ipro-space-1); font: 500 var(--ipro-text-xs)/1 var(--ipro-font-body); color: var(--ipro-ink-700); }
.ipro-status::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; flex-shrink: 0; }
.ipro-status--available { color: var(--ipro-success-700); }
.ipro-status--offer     { color: var(--ipro-warning-700); }
.ipro-status--soon      { color: var(--ipro-warning-700); }
.ipro-status--expired   { color: var(--ipro-ink-500); }
.ipro-card-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); gap: var(--ipro-space-5); }
.ipro-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-surface-200);
  border-radius: var(--ipro-radius-lg);
  overflow: hidden; 
  transition: transform var(--ipro-transition-fast) var(--ipro-easing-standard), border-color var(--ipro-transition-fast) var(--ipro-easing-standard), background-color var(--ipro-transition-fast) var(--ipro-easing-standard), box-shadow var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-card:hover {
  transform: translateY(-2px);
  border-color: var(--ipro-vetiver-300);
  background: var(--ipro-laiton-100);
  box-shadow: var(--ipro-shadow-md);
}
.ipro-card:hover .ipro-card__kicker,
.ipro-card:hover .ipro-card__price small,
.ipro-card:hover .ipro-card__ref,
.ipro-card:hover .ipro-card__seller { color: var(--ipro-ink-700); }
.ipro-card__media {
  position: relative;
  display: block;
  aspect-ratio: 3 / 2;
  background: var(--ipro-surface-100);
  overflow: hidden;
}
.ipro-card__media-img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ipro-card__media-placeholder {
  position: absolute; inset: 0;
  display: grid; place-items: center;
  background:
    var(--ipro-surface-100)
    repeating-linear-gradient(45deg, var(--ipro-trame-on-light) 0 1px, transparent 1px 7px);
}
.ipro-card__media-placeholder svg { width: 48px; height: 48px; color: var(--ipro-ink-500); }
.ipro-card__badges { position: absolute; top: 12px; left: 12px; display: flex; gap: 4px; flex-wrap: wrap; }
.ipro-card__body { padding: var(--ipro-space-4); display: flex; flex-direction: column; gap: var(--ipro-space-3); flex: 1; min-width: 0; }
.ipro-card__title { font: 700 var(--ipro-text-lg)/1.3 var(--ipro-font-display); color: var(--ipro-ink-900); margin: 0; letter-spacing: -0.01em; }
.ipro-card__data {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px;
  font: 500 var(--ipro-text-sm)/1.4 var(--ipro-font-data);
  color: var(--ipro-ink-700);
  font-variant-numeric: tabular-nums;
}
.ipro-card__data .ipro-card__sep { color: var(--ipro-ink-500); }
.ipro-card__price { color: var(--ipro-brand-700); font-weight: 600; }
.ipro-card__price small { font-weight: 500; color: var(--ipro-ink-500); margin-left: 2px; }
.ipro-card__ref { color: var(--ipro-ink-500); }
.ipro-card__excerpt { font: 400 var(--ipro-text-sm)/1.5 var(--ipro-font-body); color: var(--ipro-ink-500); margin: 0; }
.ipro-favori { display: inline-flex; margin: 0; }
.ipro-card > .ipro-favori { position: absolute; top: 12px; right: 12px; z-index: 2; }
.ipro-card > .ipro-partage {
  position: absolute; top: 12px; right: calc(12px + 38px + var(--ipro-space-2)); z-index: 2;
  display: inline-flex; align-items: center; justify-content: center;
  width: 38px; height: 38px; padding: 0;
  background: var(--ipro-surface-scrim); border: 1px solid var(--ipro-surface-200); border-radius: 50%;
  color: var(--ipro-ink-500); cursor: pointer;
  transition: color var(--ipro-transition-fast) var(--ipro-easing-standard), border-color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-card > .ipro-partage[hidden] { display: none; }
.ipro-card:not(:has(> .ipro-favori)) > .ipro-partage { right: 12px; }
.ipro-card > .ipro-partage svg { width: 19px; height: 19px; fill: currentColor; }
.ipro-card > .ipro-partage:hover,
.ipro-card > .ipro-partage.is-copie { border-color: var(--ipro-vetiver-300); color: var(--ipro-brand-700); }
.ipro-card > .ipro-partage:focus-visible { box-shadow: 0 0 0 5px var(--ipro-on-dark-full); }
.ipro-favori__btn,
.ipro-favori--invite {
  display: inline-flex; align-items: center; justify-content: center;
  width: 38px; height: 38px; padding: 0;
  background: var(--ipro-surface-scrim);
  border: 1px solid var(--ipro-surface-200);
  border-radius: 50%;
  color: var(--ipro-ink-500);
  text-decoration: none; cursor: pointer;
  transition: color var(--ipro-transition-fast) var(--ipro-easing-standard), border-color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-favori__icon { font-size: 19px; line-height: 1; }
.ipro-favori__btn:hover,
.ipro-favori--invite:hover { border-color: var(--ipro-vetiver-300); color: var(--ipro-brand-700); }
.ipro-favori.is-active .ipro-favori__btn { color: var(--ipro-brand-700); border-color: var(--ipro-vetiver-300); }
.ipro-card > .ipro-favori .ipro-favori__btn:focus-visible,
.ipro-card > .ipro-favori.ipro-favori--invite:focus-visible { box-shadow: 0 0 0 5px var(--ipro-on-dark-full); }
.ipro-save-search {
  margin: var(--ipro-space-3) 0;
  display: flex; justify-content: flex-end;
}
.ipro-dashboard-alertes__header {
  display: flex; align-items: center; justify-content: space-between;
  gap: var(--ipro-space-3); flex-wrap: wrap; margin-bottom: var(--ipro-space-3);
}
.ipro-dashboard-alertes__consent {
  background: var(--ipro-surface-50); border: 1px solid var(--ipro-line-200);
  border-radius: var(--ipro-radius-md);
  padding: var(--ipro-space-3); margin-bottom: var(--ipro-space-4);
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--ipro-space-2);
}
.ipro-dashboard-alertes__consent label { display: flex; gap: var(--ipro-space-2); align-items: baseline; }
.ipro-dashboard-alertes__consent-state { width: 100%; margin: 0; font: 500 var(--ipro-text-sm)/1.4 var(--ipro-font-data); }
.ipro-dashboard-alertes__consent-state--on { color: var(--ipro-success-700); }
.ipro-dashboard-alertes__consent-state--off { color: var(--ipro-ink-500); }
.ipro-dashboard-alertes__list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--ipro-space-3); }
.ipro-dashboard-leads__filters {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--ipro-space-3);
}
.ipro-dashboard-leads__filter {
  display: inline-flex; align-items: center; gap: var(--ipro-space-2);
}
.ipro-dashboard-alertes__item {
  border: 1px solid var(--ipro-line-200); border-radius: var(--ipro-radius-md);
  padding: var(--ipro-space-3);
}
.ipro-dashboard-alertes__criteria {
  display: flex; align-items: baseline; justify-content: space-between;
  gap: var(--ipro-space-2); flex-wrap: wrap; margin-bottom: var(--ipro-space-2);
}
.ipro-dashboard-alertes__label { font-weight: 600; }
.ipro-dashboard-alertes__count { font: 500 var(--ipro-text-xs)/1 var(--ipro-font-data); color: var(--ipro-ink-500); }
.ipro-dashboard-alertes__preview { list-style: none; margin: 0 0 var(--ipro-space-2); padding: 0; }
.ipro-dashboard-alertes__preview li { margin-bottom: 2px; }
.ipro-dashboard-alertes__empty { color: var(--ipro-ink-500); }
.ipro-chip-zone {
  display: inline-flex; align-items: center; gap: 4px;
  background: var(--ipro-vetiver-100); color: var(--ipro-vetiver-800);
  border-radius: var(--ipro-radius-sm);
  padding: var(--ipro-space-1) var(--ipro-space-2);
  font: 500 var(--ipro-text-xs)/1 var(--ipro-font-data);
}
.ipro-chip-zone svg { width: 13px; height: 13px; }
.ipro-link--tertiary {
  display: inline-flex; align-items: center; gap: 4px;
  color: var(--ipro-color-accent-text);
  font: 500 var(--ipro-text-sm)/1 var(--ipro-font-body);
  text-decoration: underline; text-underline-offset: 2px;
}
.ipro-link--tertiary svg { width: 14px; height: 14px; }
.ipro-link--tertiary:hover { color: var(--ipro-vetiver-800); }
.ipro-details__title { display: inline; margin: 0; font: inherit; }
.ipro-recherche--panneau { display: grid; grid-template-columns: 1fr; gap: var(--ipro-space-5); align-items: start; }
@media (min-width: 1024px) {
  .ipro-recherche--panneau { grid-template-columns: minmax(280px, 320px) minmax(0, 1fr); gap: var(--ipro-space-8); }
}
.ipro-filtres { background: var(--ipro-surface-0); border: 1px solid var(--ipro-surface-200); border-radius: var(--ipro-radius-md); }
.ipro-filtres__ouvrir {
  display: flex; align-items: center; gap: var(--ipro-space-2);
  min-height: 44px; padding: var(--ipro-space-2) var(--ipro-space-4);
  font: 600 var(--ipro-text-base)/1.3 var(--ipro-font-body); color: var(--ipro-ink-900);
  cursor: pointer; list-style: none;
}
.ipro-filtres__ouvrir::-webkit-details-marker { display: none; }
.ipro-filtres__ouvrir:focus-visible { outline: 2px solid var(--ipro-vetiver-600); outline-offset: 2px; border-radius: var(--ipro-radius-md); }
.ipro-filtres__ouvrir > .ipro-icon { width: 20px; height: 20px; fill: var(--ipro-vetiver-700); }
.ipro-filtres__nb {
  display: inline-flex; align-items: center; justify-content: center; min-width: 24px; height: 24px; padding: 0 var(--ipro-space-2);
  border-radius: var(--ipro-radius-sm); background: var(--ipro-vetiver-700); color: var(--ipro-surface-0);
  font: 600 var(--ipro-text-xs)/1 var(--ipro-font-data);
}
.ipro-filtres__chevron, .ipro-tri__chevron {
  width: 18px; height: 18px; fill: var(--ipro-ink-500); transform-origin: 50% 50%;
  transition: transform var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-filtres__ouvrir > .ipro-filtres__chevron { margin-left: auto; }
.ipro-filtres[open] > .ipro-filtres__ouvrir .ipro-filtres__chevron { transform: rotate(180deg); }
@media (prefers-reduced-motion: reduce) { .ipro-filtres__chevron, .ipro-tri__chevron { transition: none; } }
@media (min-width: 1024px) {
  .ipro-filtres {
    position: sticky; top: calc(76px + var(--ipro-space-4)); max-height: calc(100vh - 76px - var(--ipro-space-8));
    overflow: auto; scroll-padding-bottom: var(--ipro-space-16);
  }
  body.admin-bar .ipro-filtres { top: calc(76px + 32px + var(--ipro-space-4)); max-height: calc(100vh - 76px - 32px - var(--ipro-space-8)); }
  .ipro-filtres.is-ouvert > .ipro-filtres__ouvrir { display: none; }
  .ipro-filtres.is-ouvert > .ipro-filterbar { border-top: 0; }
}
.ipro-filterbar { display: flex; flex-direction: column; gap: var(--ipro-space-4); padding: var(--ipro-space-4); border-top: 1px solid var(--ipro-line-200); }
.ipro-filter-field { display: flex; flex-direction: column; }
.ipro-filtres__tete { display: flex; align-items: baseline; justify-content: space-between; gap: var(--ipro-space-3); }
.ipro-filtres__titre { margin: 0; font: 600 var(--ipro-text-base)/1.3 var(--ipro-font-body); color: var(--ipro-ink-900); }
.ipro-filtres__effacer { font: 500 var(--ipro-text-sm)/1.3 var(--ipro-font-body); color: var(--ipro-vetiver-700); }
.ipro-filtres__groupe { border-top: 1px solid var(--ipro-line-200); padding-top: var(--ipro-space-3); }
.ipro-filtres__resume {
  display: flex; align-items: center; gap: var(--ipro-space-2); min-height: 44px; cursor: pointer; list-style: none;
  font: 600 var(--ipro-text-sm)/1.3 var(--ipro-font-body); color: var(--ipro-ink-900);
}
.ipro-filtres__resume::-webkit-details-marker { display: none; }
.ipro-filtres__resume:focus-visible { outline: 2px solid var(--ipro-vetiver-600); outline-offset: 2px; border-radius: var(--ipro-radius-sm); }
.ipro-filtres__resume > .ipro-filtres__chevron { margin-left: auto; width: 16px; height: 16px; }
.ipro-filtres__groupe[open] > .ipro-filtres__resume .ipro-filtres__chevron { transform: rotate(180deg); }
.ipro-filtres__actifs { font: 400 var(--ipro-text-xs)/1.3 var(--ipro-font-body); color: var(--ipro-ink-500); }
.ipro-filtres__corps { display: grid; grid-template-columns: 1fr; gap: var(--ipro-space-3); margin: 0; padding: var(--ipro-space-1) 0 var(--ipro-space-3); border: 0; min-width: 0; }
.ipro-filtres__corps--2 { grid-template-columns: 1fr 1fr; }
.ipro-filtres__corps--2 > .ipro-filter-field:last-of-type:nth-of-type(odd) { grid-column: 1 / -1; }
.ipro-filtres__corps--cases { gap: var(--ipro-space-2); }
.ipro-filtres__pied { position: sticky; bottom: 0; display: flex; gap: var(--ipro-space-3); padding-top: var(--ipro-space-3); background: var(--ipro-surface-0); border-top: 1px solid var(--ipro-line-200); }
.ipro-filtres__pied .ipro-btn { flex: 1 1 auto; }
.ipro-carte-filtre { margin: 0; }
.ipro-carte-filtre__resume {
  display: flex; align-items: center; gap: var(--ipro-space-2); min-height: 44px; cursor: pointer; list-style: none;
  font: 600 var(--ipro-text-sm)/1.3 var(--ipro-font-body); color: var(--ipro-ink-900);
}
.ipro-carte-filtre__resume::-webkit-details-marker { display: none; }
.ipro-carte-filtre__resume:focus-visible { outline: 2px solid var(--ipro-vetiver-600); outline-offset: 2px; border-radius: var(--ipro-radius-sm); }
.ipro-carte-filtre__resume > .ipro-filtres__chevron { margin-left: auto; width: 16px; height: 16px; }
.ipro-carte-filtre[open] > .ipro-carte-filtre__resume .ipro-filtres__chevron { transform: rotate(180deg); }
.ipro-carte-filtre__figure { margin: 0; }
.ipro-carte-filtre__cadre { position: relative; border: 1px solid var(--ipro-line-100); border-radius: var(--ipro-radius-md); overflow: hidden; background: var(--ipro-surface-0); }
.ipro-carte-filtre__cadre > svg { display: block; width: 100%; height: auto; color: var(--ipro-line-200); }
.ipro-carte-filtre__attente { margin: 0; padding: var(--ipro-space-3); aspect-ratio: 320 / 287; font-size: var(--ipro-text-sm); color: var(--ipro-ink-500); }
.ipro-carte__niveau { color: var(--ipro-line-200); }
.ipro-carte__niveau--1 { color: var(--ipro-vetiver-100); }
.ipro-carte__niveau--2 { color: var(--ipro-vetiver-300); }
.ipro-carte__niveau--3 { color: var(--ipro-vetiver-500); }
.ipro-carte__niveau--4 { color: var(--ipro-vetiver-700); }
.ipro-carte-filtre .ipro-carte__actif { color: var(--ipro-laiton-500); }
.ipro-carte__lien { cursor: pointer; }
.ipro-carte__lien:hover > use { filter: brightness(0.85); }
.ipro-carte__lien--actif:hover > use { filter: none; opacity: 0.7; }
.ipro-carte__lien:focus-visible { outline: 2px solid var(--ipro-vetiver-600); outline-offset: 2px; }
.ipro-carte__lien:focus-visible > use { filter: drop-shadow(0 0 2px var(--ipro-vetiver-600)) brightness(0.85); }
.ipro-carte-filtre__legende {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--ipro-space-1) var(--ipro-space-3); margin: var(--ipro-space-2) 0 0;
  font: 400 var(--ipro-text-xs)/1.3 var(--ipro-font-body); color: var(--ipro-ink-700);
}
.ipro-carte-filtre__item { display: inline-flex; align-items: center; gap: var(--ipro-space-1); }
.ipro-carte-filtre__pastille { display: inline-block; width: 12px; height: 12px; border-radius: 2px; border: 1px solid var(--ipro-line-200); }
.ipro-carte-filtre__pastille--1 { background: var(--ipro-vetiver-100); }
.ipro-carte-filtre__pastille--2 { background: var(--ipro-vetiver-300); }
.ipro-carte-filtre__pastille--3 { background: var(--ipro-vetiver-500); }
.ipro-carte-filtre__pastille--4 { background: var(--ipro-vetiver-700); }
.ipro-carte-filtre__pastille--actif { background: var(--ipro-laiton-500); }
.ipro-results[aria-busy="true"] { opacity: 0.6; transition: opacity var(--ipro-transition-fast) var(--ipro-easing-standard); cursor: progress; }
@media (prefers-reduced-motion: reduce) { .ipro-results[aria-busy="true"] { transition: none; } }
.ipro-criteres { display: flex; flex-wrap: wrap; gap: var(--ipro-space-2); margin: 0 0 var(--ipro-space-4); padding: 0; list-style: none; }
.ipro-critere {
  display: inline-flex; align-items: center; gap: 4px; max-width: 100%;
  min-height: 28px; padding: 2px var(--ipro-space-2) 2px var(--ipro-space-3);
  background: var(--ipro-vetiver-50); border: 1px solid var(--ipro-vetiver-300); border-radius: var(--ipro-radius-md);
  font: 500 var(--ipro-text-sm)/1.3 var(--ipro-font-body); color: var(--ipro-vetiver-800);
}
.ipro-critere__libelle { white-space: normal; overflow-wrap: anywhere; min-width: 0; }
.ipro-critere__retrait, .ipro-qs__critere .ipro-critere__retrait {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 24px; min-height: 24px; margin-left: 2px; border-radius: var(--ipro-radius-sm);
  color: var(--ipro-vetiver-800); font-size: 16px; line-height: 1; text-decoration: none;
}
.ipro-qs__critere .ipro-critere__retrait { align-self: center; margin: -4px -4px -4px -2px; }
.ipro-critere__retrait:hover { background: var(--ipro-vetiver-100); color: var(--ipro-vetiver-900); text-decoration: none; }
.ipro-critere__retrait:focus-visible { outline: 2px solid var(--ipro-vetiver-600); outline-offset: 1px; }
.ipro-filter-field--check {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--ipro-space-2);
}
.ipro-label--check {
  margin: 0;
}
.ipro-alert {
  display: flex; align-items: flex-start; gap: var(--ipro-space-3);
  padding: var(--ipro-space-3) var(--ipro-space-4);
  border-radius: var(--ipro-radius-md);
  font: 400 var(--ipro-text-sm)/1.5 var(--ipro-font-body);
  border: 1px solid transparent;
  border-left-width: 3px;
}
.ipro-alert svg { width: 20px; height: 20px; flex-shrink: 0; margin-top: 1px; }
.ipro-alert--success { background: var(--ipro-success-50); color: var(--ipro-success-700); border-color: var(--ipro-success-100); border-left-color: var(--ipro-success-600); }
.ipro-alert--warning { background: var(--ipro-warning-50); color: var(--ipro-warning-700); border-color: var(--ipro-warning-100); border-left-color: var(--ipro-warning-700); }
.ipro-alert--danger,
.ipro-alert--error   { background: var(--ipro-danger-50);  color: var(--ipro-danger-600);  border-color: var(--ipro-danger-100); border-left-color: var(--ipro-danger-600); }
.ipro-alert--info    { background: var(--ipro-info-bg);    color: var(--ipro-info-600);    border-color: var(--ipro-info-bg); border-left-color: var(--ipro-info-600); }
.ipro-toaster { position: fixed; right: var(--ipro-space-5); bottom: var(--ipro-space-5); z-index: var(--ipro-z-toast); display: flex; flex-direction: column; gap: var(--ipro-space-3); max-width: min(92vw, 380px); }
.ipro-toast {
  display: flex; align-items: flex-start; gap: var(--ipro-space-3);
  background: var(--ipro-ink-900); color: var(--ipro-on-dark-full);
  padding: var(--ipro-space-3) var(--ipro-space-4);
  border-radius: var(--ipro-radius-md);
  border-left: 3px solid var(--ipro-info-600);
  box-shadow: 0 2px 12px rgba(32, 35, 31, 0.18);
  font: 400 var(--ipro-text-sm)/1.5 var(--ipro-font-body);
}
.ipro-toast--success { border-left-color: var(--ipro-success-600); }
.ipro-toast--warning { border-left-color: var(--ipro-warning-700); }
.ipro-toast--danger  { border-left-color: var(--ipro-danger-600); }
.ipro-toast--info    { border-left-color: var(--ipro-info-600); }
.ipro-toast svg { width: 20px; height: 20px; flex-shrink: 0; margin-top: 1px; }
.ipro-toast__close { margin-left: auto; background: none; border: 0; color: var(--ipro-on-dark-700, #C8D6CE); cursor: pointer; padding: 2px; line-height: 0; }
.ipro-toast__close:hover { color: var(--ipro-on-dark-full); }
.ipro-tag {
  display: inline-flex; align-items: center; gap: 4px;
  background: var(--ipro-vetiver-100); color: var(--ipro-vetiver-800);
  padding: var(--ipro-space-1) var(--ipro-space-1) var(--ipro-space-1) var(--ipro-space-2);
  border-radius: var(--ipro-radius-md);
  font: 500 var(--ipro-text-sm)/1 var(--ipro-font-body);
}
.ipro-tag__close {
  display: inline-flex; align-items: center; justify-content: center;
  width: 18px; height: 18px; border: 0; background: none; cursor: pointer;
  color: var(--ipro-vetiver-800); border-radius: var(--ipro-radius-sm); line-height: 0; font-size: 16px;
}
.ipro-tag__close:hover { color: var(--ipro-vetiver-600); background: color-mix(in srgb, var(--ipro-vetiver-800) 12%, transparent); }
.ipro-pagination { display: flex; gap: 4px; justify-content: center; margin-top: var(--ipro-space-8); }
.ipro-pagination__item {
  min-width: 44px; height: 44px;
  display: inline-flex; align-items: center; justify-content: center;
  padding: 0 var(--ipro-space-2);
  border-radius: var(--ipro-radius-md);
  font: 500 var(--ipro-text-sm)/1 var(--ipro-font-body);
  color: var(--ipro-ink-700);
  background: transparent;
  border: 1px solid var(--ipro-surface-200);
  cursor: pointer;
}
.ipro-pagination__item:hover { background: var(--ipro-surface-100); }
.ipro-pagination__item[aria-current="page"] { background: var(--ipro-brand-700); color: var(--ipro-on-dark-full); border-color: var(--ipro-brand-700); }
.ipro-pagination .page-numbers {
  min-width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center;
  padding: 0 var(--ipro-space-2); border-radius: var(--ipro-radius-md);
  font: 500 var(--ipro-text-sm)/1 var(--ipro-font-body); color: var(--ipro-ink-700);
  background: transparent; border: 1px solid var(--ipro-surface-200); text-decoration: none;
}
.ipro-pagination a.page-numbers:hover { background: var(--ipro-surface-100); }
.ipro-pagination .page-numbers.current { background: var(--ipro-brand-700); color: var(--ipro-on-dark-full); border-color: var(--ipro-brand-700); }
.ipro-pagination .page-numbers.dots { border-color: transparent; cursor: default; }
.ipro-skip {
  position: absolute; left: -9999px; top: 0;
  background: var(--ipro-brand-700); color: var(--ipro-on-dark-full);
  padding: 8px 16px; z-index: 9999; border-radius: 0 0 var(--ipro-radius-md) 0;
}
.ipro-skip:focus { left: 0; }
.ipro-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);   
  clip-path: inset(50%);    
  white-space: nowrap;
  border: 0;
}
.ipro-icon { display: inline-block; width: 1em; height: 1em; color: currentColor; flex-shrink: 0; vertical-align: middle; }
.ipro-icon--sm { width: 20px; height: 20px; }   
.ipro-icon--md { width: 24px; height: 24px; }   
.ipro-icon--lead { margin-right: 0.4em; }        
.ipro-section { padding: var(--ipro-space-12) 0; }
@media (min-width: 1024px) { .ipro-section { padding: var(--ipro-space-16) 0; } }
.ipro-section--alt { background: var(--ipro-surface-0); border-top: 1px solid var(--ipro-surface-200); border-bottom: 1px solid var(--ipro-surface-200); }
.ipro-section__head { display: flex; align-items: end; justify-content: space-between; gap: var(--ipro-space-6); flex-wrap: wrap; margin-bottom: var(--ipro-space-8); }
.ipro-section__head p { color: var(--ipro-ink-500); max-width: 56ch; margin-top: var(--ipro-space-3); font-size: var(--ipro-text-base); }
.ipro-latest { padding-block: var(--ipro-section-y); }
.ipro-latest .ipro-section__head { margin-bottom: var(--ipro-space-5); }
.ipro-latest .ipro-section__head h2 { margin: 0; }
.ipro-latest__foot { margin-top: var(--ipro-space-8); text-align: center; }
.ipro-latest .ipro-card-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 380px), 1fr)); }
.ipro-hero {
  position: relative;
  background: var(--ipro-brand-900);
  color: var(--ipro-on-dark-full);
  padding: var(--ipro-space-12) 0 var(--ipro-space-16);
  overflow: hidden;
}
.ipro-hero::before {
  content: "";
  position: absolute; inset: 0;
  background-image: repeating-linear-gradient(45deg, var(--ipro-trame-on-dark) 0 1px, transparent 1px 7px);
  pointer-events: none;
}
.ipro-hero__inner { position: relative; z-index: 1; }
.ipro-hero h1 { color: var(--ipro-on-dark-full); max-width: 18ch; }
.ipro-hero h1 em { font-style: normal; color: var(--ipro-laiton-300); }
.ipro-hero p.lead {
  color: var(--ipro-on-dark-700);
  font-size: var(--ipro-text-lg);
  max-width: 56ch;
  margin-top: var(--ipro-space-4);
}
.ipro-hero__search {
  margin-top: var(--ipro-space-8);
  background: var(--ipro-surface-0);
  border-radius: var(--ipro-radius-lg);
  padding: var(--ipro-space-4);
  border: 1px solid var(--ipro-line-100);
  color: var(--ipro-ink-900);
}
.ipro-hero__stats {
  display: flex; gap: var(--ipro-space-8); flex-wrap: wrap;
  margin-top: var(--ipro-space-8);
  border-top: 1px solid var(--ipro-on-dark-line);
  padding-top: var(--ipro-space-6);
}
.ipro-hero__stat dt { font: 500 var(--ipro-text-xs)/1 var(--ipro-font-body); text-transform: uppercase; letter-spacing: 0.08em; color: var(--ipro-on-dark-500); margin-bottom: var(--ipro-space-1); }
.ipro-hero__stat dd { font: 500 var(--ipro-text-2xl)/1 var(--ipro-font-data); color: var(--ipro-on-dark-full); margin: 0; font-variant-numeric: tabular-nums; }
.ipro-tabs { display: flex; gap: 4px; flex-wrap: wrap; }
.ipro-tab {
  display: inline-flex; align-items: center; gap: var(--ipro-space-1);
  height: 36px; padding: 0 var(--ipro-space-3);
  background: transparent;
  color: var(--ipro-ink-700);
  border: 1px solid var(--ipro-surface-200);
  border-radius: var(--ipro-radius-md);
  font: 500 var(--ipro-text-sm)/1 var(--ipro-font-body);
  cursor: pointer;
}
.ipro-tab[aria-selected="true"],
.ipro-tab[aria-current="true"] { background: var(--ipro-brand-700); color: var(--ipro-on-dark-full); border-color: var(--ipro-brand-700); }
.ipro-tab:hover:not([aria-selected="true"]):not([aria-current="true"]) { background: var(--ipro-surface-100); }
.ipro-zones {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--ipro-space-3);
}
@media (min-width: 1024px) { .ipro-zones { grid-template-columns: repeat(4, 1fr); gap: var(--ipro-space-4); } }
.ipro-zone {
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-surface-200);
  border-radius: var(--ipro-radius-lg);
  padding: var(--ipro-space-5);
  text-decoration: none;
  color: var(--ipro-ink-900);
  display: flex; flex-direction: column; gap: var(--ipro-space-2);
  transition: border-color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-zone:hover { border-color: var(--ipro-brand-300); text-decoration: none; }
.ipro-zone__name { font: 700 var(--ipro-text-lg)/1 var(--ipro-font-display); }
.ipro-zone__count { color: var(--ipro-brand-700); font-family: var(--ipro-font-data); font-weight: 500; font-variant-numeric: tabular-nums; }
.ipro-zone__cities { color: var(--ipro-ink-500); font-size: var(--ipro-text-sm); }
.ipro-trust {
  display: grid; gap: var(--ipro-space-6);
  grid-template-columns: 1fr;
}
@media (min-width: 1024px) { .ipro-trust { grid-template-columns: repeat(3, 1fr); gap: var(--ipro-space-8); } }
.ipro-trust__item { display: flex; gap: var(--ipro-space-4); align-items: flex-start; }
.ipro-trust__icon {
  width: 44px; height: 44px;
  border-radius: var(--ipro-radius-sm);
  background: var(--ipro-brand-50);
  color: var(--ipro-brand-700);
  display: grid; place-items: center;
  flex-shrink: 0;
}
.ipro-trust__title { font: 700 var(--ipro-text-lg)/1.3 var(--ipro-font-display); margin-bottom: var(--ipro-space-2); }
.ipro-trust__desc  { color: var(--ipro-ink-500); font-size: var(--ipro-text-sm); line-height: var(--ipro-leading-normal); }
.ipro-filter-trigger { display: flex; }
@media (min-width: 1024px) { .ipro-filter-trigger { display: none; } }
.ipro-dashboard-card__moderation-comment {
  margin: 0;
  padding: var(--ipro-space-2) var(--ipro-space-3);
  background: color-mix(in srgb, var(--ipro-ink-900) 4%, transparent);
  border-left: 3px solid currentColor;
  font-size: var(--ipro-text-sm);
  font-style: italic;
  line-height: var(--ipro-leading-normal);
}
.ipro-dashboard-card__moderation-comment strong { font-style: normal; font-weight: 600; }
.ipro-badge.is-demande-modification {
  background: var(--ipro-warning-50);
  color: var(--ipro-warning-700);
  border: 1px solid var(--ipro-warning-100);
}
.ipro-badge.is-retire {
  background: var(--ipro-danger-50);
  color: var(--ipro-danger-700);
  border: 1px solid var(--ipro-danger-100);
}
.ipro-badge.is-expired {
  background: var(--ipro-surface-50);
  color: var(--ipro-ink-700);
  border: 1px solid var(--ipro-line-200);
}
.ipro-cote { position: relative; display: inline-block; padding-bottom: 14px; }
.ipro-cote::after {
  content: ""; position: absolute; left: 0; right: 0; bottom: 6px;
  height: 1.5px; background-color: var(--ipro-laiton-500);
}
.ipro-cote::before {
  --ipro-cote-tick: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='8'%20height='13'%3E%3Cpath%20d='M1%2010L7%204'%20stroke='%23fff'%20stroke-width='1.5'%20fill='none'/%3E%3C/svg%3E");
  content: ""; position: absolute; left: 0; right: 0; bottom: 0;
  height: 13px; background-color: var(--ipro-laiton-500);
  -webkit-mask: var(--ipro-cote-tick) left center / 8px 13px no-repeat, var(--ipro-cote-tick) right center / 8px 13px no-repeat;
  mask: var(--ipro-cote-tick) left center / 8px 13px no-repeat, var(--ipro-cote-tick) right center / 8px 13px no-repeat;
}
.ipro-cote--vetiver::after, .ipro-cote--vetiver::before { background-color: var(--ipro-vetiver-600); }
.ipro-cote__tick { display: none; }
.ipro-trame { background-image: repeating-linear-gradient(45deg, var(--ipro-trame-on-light) 0 1px, transparent 1px 7px); }
.ipro-font-data { font-family: var(--ipro-font-data); font-weight: 500; font-variant-numeric: tabular-nums; letter-spacing: 0; }
.ipro-font-data--ref { font-weight: 600; color: var(--ipro-vetiver-700); }
.ipro-breadcrumb {
  font-size: var(--ipro-text-sm); color: var(--ipro-ink-500);
  margin-bottom: var(--ipro-space-4);
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--ipro-space-2);
}
.ipro-breadcrumb a { color: var(--ipro-ink-700); text-decoration: none; }
.ipro-breadcrumb a:hover { color: var(--ipro-color-accent-text); text-decoration: underline; text-underline-offset: 3px; }
.ipro-breadcrumb__sep { color: var(--ipro-line-200); }
.ipro-breadcrumb [aria-current="page"] { color: var(--ipro-ink-500); }
.ipro-page__head { margin-bottom: var(--ipro-space-8); }
.ipro-page__head h1 { margin: 0; }
.ipro-page__lede {
  margin-top: var(--ipro-space-4); max-width: 64ch;
  font-size: var(--ipro-text-lg); line-height: var(--ipro-leading-normal);
  color: var(--ipro-ink-700);
}
.ipro-prose {
  max-width: 68ch; color: var(--ipro-ink-900);
  font-size: var(--ipro-text-base); line-height: var(--ipro-leading-relaxed);
  overflow-wrap: break-word;
}
.ipro-prose > :first-child { margin-top: 0; }
.ipro-prose > :last-child { margin-bottom: 0; }
.ipro-prose p { margin: 0 0 var(--ipro-space-4); }
.ipro-prose h2 {
  font-family: var(--ipro-font-display); font-stretch: var(--ipro-stretch-display); font-weight: 700;
  font-size: var(--ipro-text-3xl); line-height: var(--ipro-leading-tight); color: var(--ipro-ink-900);
  margin: var(--ipro-space-8) 0 var(--ipro-space-3);
}
.ipro-prose h3 {
  font-family: var(--ipro-font-display); font-weight: 600;
  font-size: var(--ipro-text-xl); line-height: var(--ipro-leading-snug);
  margin: var(--ipro-space-6) 0 var(--ipro-space-2);
}
.ipro-prose :is(h2, h3) + p { margin-top: 0; }
.ipro-prose a {
  color: var(--ipro-color-accent-text); text-decoration: underline;
  text-underline-offset: 2px; text-decoration-thickness: 1px;
}
.ipro-prose a:hover { text-decoration-thickness: 2px; }
.ipro-prose ul, .ipro-prose ol { margin: 0 0 var(--ipro-space-4); padding-left: var(--ipro-space-5); }
.ipro-prose li { margin-bottom: var(--ipro-space-2); }
.ipro-prose li::marker { color: var(--ipro-vetiver-600); }
.ipro-prose strong { font-weight: 700; color: var(--ipro-ink-900); }
.ipro-prose blockquote {
  margin: var(--ipro-space-5) 0; padding: var(--ipro-space-2) 0 var(--ipro-space-2) var(--ipro-space-5);
  border-left: 3px solid var(--ipro-laiton-500); color: var(--ipro-ink-700);
}
.ipro-prose blockquote p:last-child { margin-bottom: 0; }
.ipro-prose hr { border: 0; border-top: 1px solid var(--ipro-line-100); margin: var(--ipro-space-8) 0; }
.ipro-prose code {
  font-family: var(--ipro-font-data); font-size: 0.9em;
  background: var(--ipro-surface-50); border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-sm); padding: 1px 5px;
}
.ipro-prose table { width: 100%; border-collapse: collapse; margin: 0 0 var(--ipro-space-5); font-size: var(--ipro-text-sm); }
.ipro-prose th, .ipro-prose td { text-align: left; padding: var(--ipro-space-3); border-bottom: 1px solid var(--ipro-line-100); }
.ipro-prose th { font-weight: 600; color: var(--ipro-ink-700); }
.ipro-prose__defile { overflow-x: auto; margin: 0 0 var(--ipro-space-5); }
.ipro-prose__defile > table { margin-bottom: 0; }
.ipro-prose__defile caption { text-align: start; }
@media print, (min-width: 768px) {
  .ipro-prose :is(td, th) code { overflow-wrap: anywhere; }
}
@media print {
  .ipro-prose__defile { overflow: visible; }
}
.ipro-searchlist { list-style: none; margin: 0; padding: 0; }
.ipro-searchlist__item { padding: var(--ipro-space-5) 0; border-bottom: 1px solid var(--ipro-line-100); }
.ipro-searchlist__item a { text-decoration: none; color: var(--ipro-ink-900); }
.ipro-searchlist__item h2 { font-size: var(--ipro-text-xl); margin: 0 0 var(--ipro-space-2); }
.ipro-searchlist__item a:hover h2 { color: var(--ipro-color-accent-text); }
.ipro-searchlist__item p { margin: 0 0 var(--ipro-space-2); color: var(--ipro-ink-700); max-width: 68ch; }
.ipro-searchlist__url { font-size: var(--ipro-text-xs); color: var(--ipro-ink-500); font-family: var(--ipro-font-data); }
.ipro-archive-head__cote { width: 56px; height: 4px; background: var(--ipro-laiton-500); margin: var(--ipro-space-3) 0 0; }
.ipro-card-grid--liste { grid-template-columns: 1fr; gap: var(--ipro-space-5); container-type: inline-size; }
.ipro-card--h-specs { display: grid; grid-template-columns: 1fr; }
.ipro-card--h-specs .ipro-card__media { aspect-ratio: 16 / 9; }
.ipro-card--h-specs .ipro-card__body { display: flex; flex-direction: column; gap: var(--ipro-space-2); padding: var(--ipro-space-4); min-width: 0; }
@media (min-width: 640px) {
  .ipro-card--h-specs { grid-template-columns: 240px minmax(0, 1fr); --ipro-card-action: 30px; }
  .ipro-card--h-specs .ipro-card__media { aspect-ratio: auto; height: 100%; min-height: 200px; }
  .ipro-card--h-specs .ipro-card__operation {
    margin-right: calc(var(--ipro-space-4) * -1);
    padding-right: calc(var(--ipro-space-3) * 2 + var(--ipro-card-action) * 2 + var(--ipro-space-2));
  }
  .ipro-card--h-specs > .ipro-favori,
  .ipro-card--h-specs > .ipro-partage { top: 6px; }
  .ipro-card--h-specs > .ipro-favori { right: var(--ipro-space-3); }
  .ipro-card--h-specs > .ipro-partage { right: calc(var(--ipro-space-3) + var(--ipro-card-action) + var(--ipro-space-2)); }
  .ipro-card--h-specs:not(:has(> .ipro-favori)) > .ipro-partage { right: var(--ipro-space-3); }
  .ipro-card--h-specs:not(:has(> .ipro-favori)) .ipro-card__operation { padding-right: calc(var(--ipro-space-3) * 2 + var(--ipro-card-action)); }
  .ipro-card--h-specs:not(:has(.ipro-card__operation)) .ipro-card__body { padding-top: calc(6px + var(--ipro-card-action) + var(--ipro-space-2)); }
  .ipro-card--h-specs > .ipro-favori .ipro-favori__btn,
  .ipro-card--h-specs > .ipro-favori.ipro-favori--invite,
  .ipro-card--h-specs > .ipro-partage {
    width: var(--ipro-card-action); height: var(--ipro-card-action);
    background: var(--ipro-surface-0); border-color: var(--ipro-line-200); color: var(--ipro-ink-700);
  }
  .ipro-card--h-specs > .ipro-favori .ipro-favori__icon { font-size: 16px; }
  .ipro-card--h-specs > .ipro-partage svg { width: 16px; height: 16px; }
  .ipro-card--h-specs > .ipro-favori .ipro-favori__btn:hover,
  .ipro-card--h-specs > .ipro-favori.ipro-favori--invite:hover,
  .ipro-card--h-specs > .ipro-favori.is-active .ipro-favori__btn,
  .ipro-card--h-specs > .ipro-partage:hover,
  .ipro-card--h-specs > .ipro-partage.is-copie { color: var(--ipro-brand-700); border-color: var(--ipro-vetiver-300); }
  .ipro-card--h-specs > .ipro-favori .ipro-favori__btn:focus-visible,
  .ipro-card--h-specs > .ipro-favori.ipro-favori--invite:focus-visible,
  .ipro-card--h-specs > .ipro-partage:focus-visible { box-shadow: none; }
}
@container (min-width: 820px) {
  .ipro-card--h-specs { grid-template-columns: 240px minmax(0, 1fr); }
  .ipro-card--h-specs .ipro-card__body {
    display: grid; grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto auto auto auto auto 1fr auto;
    gap: var(--ipro-space-2) var(--ipro-space-6); padding: var(--ipro-space-4) var(--ipro-space-5);
  }
  .ipro-card--h-specs .ipro-card__body > * { grid-column: 1 / -1; }
  .ipro-card--h-specs .ipro-card__operation {
    grid-row: 1; margin-inline: calc(var(--ipro-space-5) * -1);
    padding-left: var(--ipro-space-5);
  }
  .ipro-card--h-specs .ipro-card__title { grid-row: 2; grid-column: 1; }
  .ipro-card--h-specs .ipro-card__price-line { grid-row: 2; grid-column: 2; align-self: start; text-align: right; white-space: nowrap; }
  .ipro-card--h-specs .ipro-card__excerpt { grid-row: 3; }
  .ipro-card--h-specs .ipro-card__data { grid-row: 4; }
  .ipro-card--h-specs .ipro-card__specs { grid-row: 5; flex-direction: row; flex-wrap: wrap; gap: var(--ipro-space-2) var(--ipro-space-5); align-self: start; }
  .ipro-card--h-specs .ipro-card__trust { grid-row: 6; }
  .ipro-card--h-specs .ipro-card__foot { grid-row: 8; }
}
.ipro-card--h-specs .ipro-card__excerpt {
  color: var(--ipro-ink-700); max-width: 52ch; text-wrap: pretty;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ipro-card--h-specs .ipro-card__foot { padding-top: var(--ipro-space-4); border-top: 0; }
.ipro-card--h-specs .ipro-card__more { display: inline-flex; align-items: center; gap: var(--ipro-space-1); white-space: nowrap; }
.ipro-card__specs { display: flex; flex-wrap: wrap; gap: var(--ipro-space-2) var(--ipro-space-4); margin: 0; padding: 0; list-style: none; }
.ipro-card__spec { display: flex; align-items: center; gap: var(--ipro-space-2); font-size: var(--ipro-text-sm); color: var(--ipro-ink-700); }
.ipro-card__spec svg { flex: none; width: 16px; height: 16px; color: var(--ipro-vetiver-600); }
.ipro-card__media-placeholder--sombre {
  background:
    var(--ipro-vetiver-800)
    repeating-linear-gradient(135deg, var(--ipro-trame-on-dark) 0 1px, transparent 1px 8px);
}
.ipro-card__media-placeholder--sombre svg { color: var(--ipro-vetiver-300); width: 64px; height: 64px; }
.ipro-fiche { max-width: 1200px; margin: 0 auto; padding: var(--ipro-space-5) var(--ipro-space-4) var(--ipro-space-8); }
.ipro-fiche__breadcrumb { margin-bottom: var(--ipro-space-5); }
.ipro-fiche__breadcrumb ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: var(--ipro-space-2); font-size: var(--ipro-text-sm); color: var(--ipro-ink-500); }
.ipro-fiche__breadcrumb [aria-current="page"] { color: var(--ipro-ink-700); }
.ipro-fiche__alerte {
  display: flex; align-items: flex-start; gap: var(--ipro-space-3);
  margin: 0 0 var(--ipro-space-5);
  padding: var(--ipro-space-3) var(--ipro-space-4);
  background: var(--ipro-warning-bg);
  border-left: 3px solid var(--ipro-warning-700);
  border-radius: var(--ipro-radius-sm);
  font-size: var(--ipro-text-sm); color: var(--ipro-ink-900);
}
.ipro-fiche__alerte svg { flex: none; width: 18px; height: 18px; margin-top: 2px; color: var(--ipro-warning-700); }
.ipro-fiche__top { display: grid; gap: var(--ipro-space-6); align-items: start; margin-bottom: var(--ipro-space-6); }
@media (min-width: 960px) { .ipro-fiche__top { grid-template-columns: 1.35fr 1fr; } }
.ipro-fiche__media { position: relative; margin: 0; }
.ipro-fiche__media img {
  display: block; width: 100%; height: auto; 
  aspect-ratio: 7 / 5; object-fit: cover;
  border-radius: var(--ipro-radius-lg); border: 1px solid var(--ipro-line-100); box-sizing: border-box;
}
.ipro-fiche__media .ipro-fiche__badges { position: absolute; top: var(--ipro-space-3); left: var(--ipro-space-3); display: flex; flex-wrap: wrap; gap: var(--ipro-space-2); max-width: calc(100% - 2 * var(--ipro-space-3)); z-index: 1; }
.ipro-fiche__media-actions { position: absolute; top: var(--ipro-space-3); right: var(--ipro-space-3); display: flex; align-items: center; gap: var(--ipro-space-2); }
.ipro-fiche__media-btn {
  width: 44px; height: 44px; display: grid; place-items: center; padding: 0;
  background: var(--ipro-surface-0); border: 1px solid var(--ipro-vetiver-700);
  border-radius: var(--ipro-radius-lg); cursor: pointer; color: var(--ipro-ink-700);
}
.ipro-fiche__media-actions .ipro-favori__btn,
.ipro-fiche__media-actions .ipro-favori--invite {
  width: 44px; height: 44px;
  background: var(--ipro-surface-0); border-color: var(--ipro-vetiver-700);
}
.ipro-fiche__media-actions .ipro-favori.is-active .ipro-favori__btn { border-color: var(--ipro-vetiver-700); }
.ipro-fiche__media-actions .ipro-favori__btn:hover,
.ipro-fiche__media-actions .ipro-favori--invite:hover,
.ipro-fiche__media-actions .ipro-favori__btn:focus-visible,
.ipro-fiche__media-actions .ipro-favori--invite:focus-visible {
  background: var(--ipro-vetiver-100); border-color: var(--ipro-vetiver-700);
}
.ipro-fiche__media-btn:hover { background: var(--ipro-vetiver-100); }
.ipro-fiche__media-btn { position: relative; }
.ipro-fiche__media-btn.is-copie { background: var(--ipro-vetiver-100); }
.ipro-fiche__media-btn.is-copie::after {
  content: attr(data-copie-label);
  position: absolute; z-index: 1; top: calc(100% + var(--ipro-space-2)); right: 0;
  padding: var(--ipro-space-1) var(--ipro-space-2);
  background: var(--ipro-ink-900); color: var(--ipro-on-dark-full);
  font-size: var(--ipro-text-sm); line-height: 1.4; white-space: nowrap;
  border-radius: var(--ipro-radius-md); pointer-events: none;
}
.ipro-fiche__media-actions .ipro-favori__btn:focus-visible,
.ipro-fiche__media-actions .ipro-favori.ipro-favori--invite:focus-visible,
.ipro-fiche__media-btn:focus-visible { box-shadow: 0 0 0 5px var(--ipro-on-dark-full); }
.ipro-fiche__media-nav {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 44px; height: 44px; display: grid; place-items: center; padding: 0;
  background: var(--ipro-surface-scrim); border: none;
  border-radius: 50%; cursor: pointer; color: var(--ipro-ink-900);
  opacity: 0.65;
  transition: opacity var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-fiche__media:hover .ipro-fiche__media-nav { opacity: 0.85; }
.ipro-fiche__media-nav:hover,
.ipro-fiche__media-nav:focus-visible { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .ipro-fiche__media-nav { transition: none; }
}
.ipro-fiche__media-nav[hidden] { display: none; }
.ipro-fiche__media-nav--prev { left: var(--ipro-space-3); }
.ipro-fiche__media-nav--next { right: var(--ipro-space-3); }
.ipro-fiche__media-nav--prev svg { transform: rotate(180deg); }
.ipro-fiche__media-compteur {
  position: absolute; bottom: var(--ipro-space-3); right: var(--ipro-space-3); margin: 0;
  padding: 2px var(--ipro-space-2);
  background: var(--ipro-surface-scrim); border-radius: var(--ipro-radius-sm);
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-eyebrow);
  color: var(--ipro-ink-900);
}
.ipro-fiche__media-compteur[hidden] { display: none; }
.ipro-fiche__thumbs { display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: var(--ipro-space-3); margin-top: var(--ipro-space-3); }
@media (max-width: 560px) { .ipro-fiche__thumbs { grid-template-columns: repeat(3, 1fr); } }
.ipro-fiche__thumb {
  display: block; padding: 0; background: none; cursor: pointer;
  border: 1px solid var(--ipro-line-100); border-radius: var(--ipro-radius-md); overflow: hidden;
}
.ipro-fiche__thumb.is-active { border: 2px solid var(--ipro-vetiver-600); }
.ipro-fiche__thumb img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.ipro-fiche__media-vide {
  aspect-ratio: 4 / 3; box-sizing: border-box; padding: var(--ipro-space-4);
  border: 1px solid var(--ipro-line-100); border-radius: var(--ipro-radius-lg);
  background: var(--ipro-vetiver-50);
  background-image: repeating-linear-gradient(135deg, var(--ipro-trame-on-light) 0 1px, transparent 1px 7px);
  display: grid; place-items: center; align-content: center; gap: var(--ipro-space-3); text-align: center;
}
.ipro-fiche__media-vide svg { width: 40px; height: 40px; color: var(--ipro-vetiver-500); }
.ipro-fiche__media-vide p { margin: 0; font-family: var(--ipro-font-data); font-size: var(--ipro-text-sm); color: var(--ipro-ink-700); max-width: 34ch; }
.ipro-fiche__place { margin: 0 0 var(--ipro-space-4); display: flex; align-items: center; gap: var(--ipro-space-2); font-size: var(--ipro-text-sm); color: var(--ipro-ink-700); }
.ipro-fiche__place svg { flex: none; width: 16px; height: 16px; color: var(--ipro-vetiver-600); }
.ipro-fiche__prix { margin: 0; font-family: var(--ipro-font-data); font-variant-numeric: tabular-nums; }
.ipro-fiche__prix-montant { font-size: var(--ipro-text-3xl); font-weight: 600; color: var(--ipro-vetiver-700); }
.ipro-fiche__prix-note { font-size: var(--ipro-text-sm); color: var(--ipro-ink-500); }
.ipro-fiche__prix-detail { margin: var(--ipro-space-1) 0 0; font-family: var(--ipro-font-data); font-size: var(--ipro-text-sm); color: var(--ipro-ink-700); }
.ipro-fiche__honoraires { margin: var(--ipro-space-1) 0 var(--ipro-space-5); font-size: var(--ipro-text-sm); color: var(--ipro-ink-500); }
.ipro-fiche__actions { display: grid; gap: var(--ipro-space-3); }
.ipro-fiche__chips { margin: var(--ipro-space-4) 0 0; display: flex; flex-wrap: wrap; gap: var(--ipro-space-2); }
.ipro-fiche__chip {
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-eyebrow); color: var(--ipro-ink-700);
  background: var(--ipro-surface-0); border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-sm); padding: 4px var(--ipro-space-2);
}
.ipro-fiche__chip--verifie {
  display: inline-flex; align-items: center; gap: 5px;
  color: var(--ipro-success-600); background: var(--ipro-success-bg); border: none;
}
.ipro-fiche__chip--verifie svg { width: 14px; height: 14px; }
.ipro-fiche__faits {
  display: grid; grid-template-columns: repeat(6, 1fr); gap: var(--ipro-space-4);
  background: var(--ipro-surface-0); border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-lg);
  padding: var(--ipro-space-4) var(--ipro-space-5); margin-bottom: var(--ipro-space-6);
}
@media (max-width: 960px) { .ipro-fiche__faits { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 560px) { .ipro-fiche__faits { grid-template-columns: repeat(2, 1fr); } }
.ipro-fiche__fait { display: flex; gap: var(--ipro-space-3); align-items: flex-start; }
.ipro-fiche__fait svg { flex: none; width: 20px; height: 20px; margin-top: 3px; color: var(--ipro-vetiver-600); }
.ipro-fiche__fait-val { display: block; font-family: var(--ipro-font-data); font-weight: 600; }
.ipro-fiche__fait-lib { font-size: var(--ipro-text-sm); color: var(--ipro-ink-500); }
.ipro-fiche__cols { display: grid; gap: var(--ipro-space-6); align-items: start; margin-bottom: var(--ipro-space-6); }
@media (min-width: 960px) { .ipro-fiche__cols { grid-template-columns: 1.6fr 1fr; } }
.ipro-fiche__lateral { display: grid; gap: var(--ipro-space-5); align-content: start; }
.ipro-fiche__bloc { background: var(--ipro-surface-0); border: 1px solid var(--ipro-line-100); border-radius: var(--ipro-radius-lg); padding: var(--ipro-space-6); }
.ipro-fiche__bloc--compact { padding: var(--ipro-space-5); }
.ipro-fiche__h2 { font-family: var(--ipro-font-display); font-stretch: var(--ipro-stretch-display); font-weight: 700; font-size: var(--ipro-text-3xl); line-height: var(--ipro-leading-tight); margin: 0; }
.ipro-fiche__h2--sm { font-size: var(--ipro-text-xl); margin-bottom: var(--ipro-space-4); display: flex; align-items: center; gap: var(--ipro-space-2); }
.ipro-fiche__h2--sm svg { width: 20px; height: 20px; color: var(--ipro-vetiver-600); }
.ipro-fiche__filet { width: 40px; height: 3px; background: var(--ipro-laiton-500); margin: var(--ipro-space-3) 0 var(--ipro-space-4); }
.ipro-fiche__desc p { margin: 0 0 var(--ipro-space-2); color: var(--ipro-ink-700); text-wrap: pretty; overflow-wrap: anywhere; }
.ipro-fiche__desc { overflow-wrap: anywhere; }
.ipro-fiche__table { width: 100%; border-collapse: collapse; font-size: var(--ipro-text-sm); }
.ipro-fiche__table tr { border-bottom: 1px solid var(--ipro-line-100); }
.ipro-fiche__table tr:last-child { border-bottom: none; }
.ipro-fiche__table th { text-align: left; font-weight: 400; color: var(--ipro-ink-500); padding: var(--ipro-space-2) var(--ipro-space-3) var(--ipro-space-2) 0; }
.ipro-fiche__table td { font-family: var(--ipro-font-data); color: var(--ipro-ink-900); padding: var(--ipro-space-2) 0; }
.ipro-fiche__acc { margin-top: var(--ipro-space-3); border: 1px solid var(--ipro-line-100); border-radius: var(--ipro-radius-lg); }
.ipro-fiche__acc:first-of-type { margin-top: var(--ipro-space-5); }
.ipro-fiche__acc summary { display: flex; align-items: center; gap: var(--ipro-space-3); padding: var(--ipro-space-3) var(--ipro-space-4); cursor: pointer; list-style: none; }
.ipro-fiche__acc summary::-webkit-details-marker { display: none; }
.ipro-fiche__acc summary > svg:first-child { flex: none; width: 20px; height: 20px; color: var(--ipro-vetiver-600); }
.ipro-fiche__acc-libelle { flex: 1; }
.ipro-fiche__acc-libelle strong { display: block; font-size: var(--ipro-text-base); }
.ipro-fiche__acc-libelle span { font-size: var(--ipro-text-sm); color: var(--ipro-ink-500); }
.ipro-fiche__acc-chev { flex: none; width: 18px; height: 18px; color: var(--ipro-ink-500); transition: transform var(--ipro-transition-fast) var(--ipro-easing-standard); }
.ipro-fiche__acc[open] .ipro-fiche__acc-chev { transform: rotate(180deg); }
.ipro-fiche__acc-corps { margin: 0; padding: 0 var(--ipro-space-4) var(--ipro-space-4) 52px; font-size: var(--ipro-text-sm); color: var(--ipro-ink-700); text-wrap: pretty; }
.ipro-fiche__plan { position: relative; border: 1px solid var(--ipro-line-100); border-radius: var(--ipro-radius-md); overflow: hidden; }
.ipro-fiche__plan > svg:first-child { display: block; width: 100%; height: auto; }
.ipro-carte { display: block; width: 100%; height: auto; color: var(--ipro-line-200); }
.ipro-carte__commune { stroke: var(--ipro-surface-0); stroke-width: 0.6; }
.ipro-carte__actif { color: var(--ipro-vetiver-700); }
.ipro-fiche__loc { margin: var(--ipro-space-4) 0 0; font-size: var(--ipro-text-sm); }
.ipro-fiche__loc-quartier { color: var(--ipro-ink-700); }
.ipro-fiche__loc-note { margin: var(--ipro-space-1) 0 var(--ipro-space-4); font-size: var(--ipro-text-sm); color: var(--ipro-ink-500); text-wrap: pretty; }
.ipro-fiche__poi { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--ipro-space-3); font-size: var(--ipro-text-sm); }
.ipro-fiche__poi li { display: flex; align-items: center; gap: var(--ipro-space-3); }
.ipro-fiche__poi svg { flex: none; width: 18px; height: 18px; color: var(--ipro-vetiver-600); }
.ipro-fiche__poi-nom { flex: 1; color: var(--ipro-ink-700); }
.ipro-fiche__poi-val { font-family: var(--ipro-font-data); color: var(--ipro-ink-900); }
.ipro-fiche__depot { background: var(--ipro-laiton-100); border-radius: var(--ipro-radius-lg); padding: var(--ipro-space-5); }
.ipro-fiche__depot p { margin: 0 0 var(--ipro-space-3); font-size: var(--ipro-text-sm); color: var(--ipro-ink-700); }
.ipro-fiche__depot p:first-child { margin-bottom: var(--ipro-space-1); font-size: var(--ipro-text-base); font-weight: 700; color: var(--ipro-ink-900); }
.ipro-fiche__depot a { display: inline-flex; align-items: center; gap: var(--ipro-space-2); font-size: var(--ipro-text-sm); font-weight: 600; color: var(--ipro-vetiver-700); }
.ipro-fiche__depot a svg { width: 15px; height: 15px; }
.ipro-fiche__contact-intro { margin: var(--ipro-space-1) 0 var(--ipro-space-5); font-size: var(--ipro-text-sm); color: var(--ipro-ink-500); }
.ipro-fiche__contact-grid { display: grid; gap: var(--ipro-space-6); align-items: start; }
@media (min-width: 960px) { .ipro-fiche__contact-grid { grid-template-columns: 1.6fr 1fr; } }
.ipro-fiche__garanties { background: var(--ipro-surface-50); border-radius: var(--ipro-radius-lg); padding: var(--ipro-space-5); display: grid; gap: var(--ipro-space-4); }
.ipro-fiche__garantie { display: flex; gap: var(--ipro-space-3); align-items: flex-start; }
.ipro-fiche__garantie + .ipro-fiche__garantie { border-top: 1px solid var(--ipro-line-100); padding-top: var(--ipro-space-4); }
.ipro-fiche__garantie svg { flex: none; width: 20px; height: 20px; margin-top: 2px; color: var(--ipro-vetiver-600); }
.ipro-fiche__garantie p { margin: 0; font-size: var(--ipro-text-sm); color: var(--ipro-ink-700); }
.ipro-fiche__garantie strong { display: block; color: var(--ipro-ink-900); }
.ipro-fiche__footer {
  margin-top: var(--ipro-space-5); padding-top: var(--ipro-space-4);
  border-top: 1px solid var(--ipro-line-200);
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: var(--ipro-space-3);
  font-size: var(--ipro-text-sm); color: var(--ipro-ink-500);
}
.ipro-fiche__footer-meta { margin: 0; font-family: var(--ipro-font-data); }
.ipro-fiche__signalement { display: inline-flex; align-items: center; gap: var(--ipro-space-2); flex-basis: 100%; color: var(--ipro-ink-500); }
.ipro-fiche__signalement svg { width: 15px; height: 15px; }
.ipro-fiche__eyebrow { color: var(--ipro-vetiver-600); margin: 0 0 var(--ipro-space-2); }
.ipro-fiche__titre { margin-bottom: var(--ipro-space-3); text-wrap: balance; }
.ipro-fiche__loc-zone { color: var(--ipro-ink-500); }
.ipro-fiche__acc-note { margin: var(--ipro-space-3) 0 0; color: var(--ipro-ink-500); }
.ipro-fiche__retour { font-weight: 600; }
.ipro-fiche__cols > *,
.ipro-fiche__lateral > *,
.ipro-fiche__contact-grid > *,
.ipro-fiche__acc-corps .ipro-details__dl,
.ipro-fiche__acc-corps .ipro-details__dl > * { min-width: 0; }
.ipro-fiche__table { table-layout: fixed; }
.ipro-fiche__table th,
.ipro-fiche__table td { overflow-wrap: anywhere; }
.ipro-fiche .ipro-contact-form .ipro-checkbox-label {
  align-items: flex-start;
  margin: var(--ipro-space-4) 0 var(--ipro-space-5);
}
.ipro-fiche .ipro-contact-form .cf-turnstile { margin-bottom: var(--ipro-space-4); }
.ipro-fiche .ipro-contact-form .ipro-form-group + .ipro-form-group { margin-top: var(--ipro-space-4); }
.ipro-fiche__print[hidden] { display: none; }
.ipro-fiche__footer-origine { display: none; }
@media print {
  .ipro-header, .ipro-mobile-nav, .ipro-toolbar, .ipro-quicksearch, .ipro-footer,
  .ipro-fiche__breadcrumb, .ipro-fiche__actions, .ipro-fiche__media-actions, .ipro-fiche__thumbs,
  .ipro-fiche__media-nav, .ipro-fiche__media-compteur, .ipro-fiche__depot, .ipro-fiche__retour,
  .ipro-lien-signalement, #contact { display: none !important; }
  .ipro-fiche__plan { max-width: 90mm; margin-inline: auto; border: none; }
  .ipro-fiche__footer-origine { display: inline; }
  .ipro-fiche { max-width: none; padding: 0; }
  .ipro-fiche__bloc, .ipro-fiche__faits {
    border: none; padding: 0; margin-bottom: var(--ipro-space-4);
  }
  .ipro-fiche__top, .ipro-fiche__cols, .ipro-fiche__contact-grid { display: block; }
  .ipro-fiche__media img { aspect-ratio: 16 / 9; }
  .ipro-fiche__acc { border: none; }
  .ipro-fiche__acc-corps { display: block !important; padding-left: 0; }
  .ipro-fiche__acc-chev { display: none; }
  .ipro-fiche__table tr, .ipro-fiche__fait { break-inside: avoid; }
}
.ipro-details__summary {
  cursor: pointer;
  padding: var(--ipro-space-4);
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-surface-200);
  border-radius: var(--ipro-radius-md);
  font-weight: 600;
}
.ipro-details__dl {
  padding: var(--ipro-space-4);
  display: grid;
  grid-template-columns: fit-content(40%) 1fr;
  gap: var(--ipro-space-2) var(--ipro-space-6);
}
.ipro-details__term { color: var(--ipro-ink-500); }
.ipro-pillars { padding-block: var(--ipro-section-y); background: var(--ipro-surface-50); }
.ipro-pillars__head { max-width: 62ch; margin: 0 auto; text-align: center; }
.ipro-pillars__eyebrow {
  margin: 0 0 var(--ipro-space-3);
  font: 600 var(--ipro-text-eyebrow)/1.2 var(--ipro-font-body);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ipro-laiton-700); 
}
.ipro-pillars__eyebrow::after {
  content: "";
  display: block;
  width: 56px;
  height: 2px;
  margin: var(--ipro-space-3) auto 0;
  background: var(--ipro-laiton-500);
}
.ipro-pillars__heading {
  margin: 0;
  font-size: var(--ipro-text-3xl);
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.ipro-pillars__heading-mark { color: var(--ipro-vetiver-500); }
.ipro-pillars__lede {
  margin: var(--ipro-space-5) auto 0;
  max-width: 60ch;
  font-size: var(--ipro-text-lg);
  line-height: 1.6;
  color: var(--ipro-ink-700);
}
.ipro-pillars__lede strong { font-weight: 600; color: var(--ipro-ink-900); }
.ipro-pillars__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ipro-space-5);
  margin-top: calc(var(--ipro-space-10) - 20px);
}
@media (min-width: 640px) { .ipro-pillars__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) {
  .ipro-pillars__grid { grid-template-columns: repeat(4, 1fr); }
  .ipro-pillars__heading { font-size: var(--ipro-text-5xl); }
}
.ipro-pillars__item {
  display: flex;
  flex-direction: column;
  gap: var(--ipro-space-3);
  padding: var(--ipro-space-6);
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-lg);
}
.ipro-pillars__icon {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: var(--ipro-radius-lg);
  background: var(--ipro-surface-50);
  color: var(--ipro-vetiver-600);
}
.ipro-pillars__icon svg { width: 26px; height: 26px; }
.ipro-pillars__title::after {
  content: "";
  display: block;
  width: 28px;
  height: 2px;
  margin-top: var(--ipro-space-3);
  background: var(--ipro-vetiver-600);
}
.ipro-pillars__title { margin: var(--ipro-space-4) 0 0; font: 700 var(--ipro-text-xl)/1.25 var(--ipro-font-display); color: var(--ipro-ink-900); }
.ipro-pillars__desc { margin: 0; color: var(--ipro-ink-700); font-size: var(--ipro-text-sm); line-height: 1.6; }
.ipro-pillars__link {
  margin-top: auto;
  padding-top: var(--ipro-space-5);
  font: 600 var(--ipro-text-sm)/1.35 var(--ipro-font-body);
  color: var(--ipro-vetiver-600);
}
.ipro-pillars__link svg { width: 16px; height: 16px; display: inline-block; vertical-align: -3px; margin-left: var(--ipro-space-2); }
.ipro-pillars__foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--ipro-space-6) var(--ipro-space-10);
  margin-top: var(--ipro-space-8);
  padding: var(--ipro-space-6);
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-lg);
}
.ipro-pillars__foot-cta { display: inline-flex; align-items: center; gap: var(--ipro-space-2); }
.ipro-pillars__foot-cta svg { width: 18px; height: 18px; }
.ipro-pillars__help { display: flex; align-items: center; gap: var(--ipro-space-4); }
.ipro-pillars__help-icon {
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: var(--ipro-radius-lg);
  background: var(--ipro-surface-0);
  color: var(--ipro-vetiver-600);
}
.ipro-pillars__help-icon svg { width: 20px; height: 20px; }
.ipro-pillars__help-body { display: flex; flex-direction: column; gap: 2px; }
.ipro-pillars__help-title { font: 600 var(--ipro-text-base)/1.3 var(--ipro-font-body); color: var(--ipro-ink-900); }
.ipro-pillars__help-link { display: inline-flex; align-items: center; gap: var(--ipro-space-2); font: 400 var(--ipro-text-base)/1.3 var(--ipro-font-body); color: var(--ipro-vetiver-600); text-decoration: underline; text-underline-offset: 3px; }
.ipro-pillars__help-link svg { width: 16px; height: 16px; }
.ipro-promo { background: var(--ipro-surface-0); border: 1px solid var(--ipro-line-100); }
.ipro-promo__inner { display: grid; grid-template-columns: 1fr; }
@media (min-width: 900px) {
  .ipro-promo__inner { grid-template-columns: 1fr 1fr; align-items: stretch; }
}
.ipro-promo__text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: var(--ipro-space-10) clamp(var(--ipro-space-5), 5vw, var(--ipro-space-16));
}
.ipro-promo__eyebrow {
  display: flex; align-items: center; gap: var(--ipro-space-2);
  margin: 0;
  font: 600 var(--ipro-text-eyebrow)/1.2 var(--ipro-font-body);
  letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--ipro-laiton-700); 
}
.ipro-promo__eyebrow-icon { display: block; line-height: 0; color: var(--ipro-laiton-500); }
.ipro-promo__eyebrow-icon svg { width: 20px; height: 20px; }
.ipro-promo__eyebrow::after {
  content: ""; display: block; width: 48px; height: 2px;
  margin-left: var(--ipro-space-2); background: var(--ipro-laiton-500);
}
.ipro-promo__title {
  align-self: stretch;
  margin: var(--ipro-space-5) 0 0;
  font-size: var(--ipro-text-3xl); line-height: 1.1; letter-spacing: -0.02em;
  max-width: 26ch; 
}
@media (min-width: 900px) {
  .ipro-promo__title { font-size: var(--ipro-text-5xl); }
}
@media (max-width: 899.98px) {
  .ipro-promo .ipro-btn {
    white-space: normal;
    height: auto;
    min-height: 44px;
    padding-block: var(--ipro-space-3);
    line-height: 1.3;
    text-align: center;
  }
}
.ipro-promo__lede {
  align-self: stretch;
  margin: var(--ipro-space-5) 0 0;
  max-width: 52ch;
  font-size: var(--ipro-text-base); line-height: 1.6; color: var(--ipro-ink-700);
}
.ipro-promo__cta { margin-top: var(--ipro-space-6); }
.ipro-promo__cta svg { width: 16px; height: 16px; }
.ipro-promo__mention {
  display: flex; align-items: center; gap: var(--ipro-space-2);
  margin: var(--ipro-space-6) 0 0;
  font-size: var(--ipro-text-sm); color: var(--ipro-ink-700);
}
.ipro-promo__mention-icon { display: block; line-height: 0; color: var(--ipro-vetiver-600); }
.ipro-promo__mention-icon svg { width: 18px; height: 18px; }
.ipro-promo__media { position: relative; }
.ipro-promo__img {
  display: block; width: 100%; height: 100%;
  min-height: 340px; 
  object-fit: cover;
  background: var(--ipro-surface-100);
}
.ipro-promo__img--vide { display: grid; place-items: center; }
.ipro-promo__img--vide svg { width: 72px; height: 72px; color: var(--ipro-vetiver-500); }
.ipro-split-advertiser { padding-block: var(--ipro-section-y); background: var(--ipro-surface-50); }
.ipro-split-advertiser__inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ipro-space-6);
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-lg);
  padding: var(--ipro-space-5);
}
@media (min-width: 640px) {
  .ipro-split-advertiser__inner { padding: var(--ipro-space-8); }
}
@media (min-width: 1024px) {
  .ipro-split-advertiser__inner { grid-template-columns: 1.05fr 1fr; align-items: center; gap: var(--ipro-space-10); padding: var(--ipro-space-10); }
}
.ipro-split-advertiser__eyebrow {
  margin: 0 0 var(--ipro-space-3);
  font: 600 var(--ipro-text-eyebrow)/1.2 var(--ipro-font-body);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ipro-laiton-700);
}
.ipro-split-advertiser__title {
  margin: 0;
  font-size: var(--ipro-text-3xl);
  line-height: 1.1;
  letter-spacing: -0.02em;
}
@media (min-width: 1024px) {
  .ipro-split-advertiser__title { font-size: var(--ipro-text-5xl); }
}
.ipro-split-advertiser__title::after {
  content: "";
  display: block;
  width: 40px;
  height: 2px;
  margin-top: var(--ipro-space-5);
  background: var(--ipro-laiton-500);
}
.ipro-split-advertiser__lede {
  max-width: 46ch;
  margin-top: var(--ipro-space-5);
  font-size: var(--ipro-text-lg);
  line-height: 1.55;
  color: var(--ipro-ink-700);
}
.ipro-split-advertiser__lede strong { font-weight: 600; color: var(--ipro-vetiver-600); }
.ipro-split-advertiser__benefits {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--ipro-space-5);
  margin: var(--ipro-space-8) 0 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 640px) {
  .ipro-split-advertiser__benefits { grid-template-columns: 1fr 1fr; gap: 0; }
  .ipro-split-advertiser__benefit { padding: var(--ipro-space-5); }
  .ipro-split-advertiser__benefit:nth-child(odd)  { padding-left: 0; border-right: 1px solid var(--ipro-line-100); }
  .ipro-split-advertiser__benefit:nth-child(even) { padding-right: 0; }
  .ipro-split-advertiser__benefit:nth-child(-n+2) { padding-top: 0; }
  .ipro-split-advertiser__benefit:nth-child(n+3)  { padding-bottom: 0; border-top: 1px solid var(--ipro-line-100); }
}
.ipro-split-advertiser__benefit { display: flex; gap: var(--ipro-space-3); align-items: flex-start; }
.ipro-split-advertiser__benefit-icon { flex-shrink: 0; display: block; line-height: 0; }
.ipro-split-advertiser__benefit-icon svg { width: 22px; height: 22px; color: var(--ipro-vetiver-600); }
.ipro-split-advertiser__benefit-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ipro-split-advertiser__benefit-title { font: 600 var(--ipro-text-base)/1.3 var(--ipro-font-body); color: var(--ipro-ink-900); }
.ipro-split-advertiser__benefit-desc  { font: 400 var(--ipro-text-sm)/1.45 var(--ipro-font-body); color: var(--ipro-ink-700); }
.ipro-split-advertiser__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--ipro-space-5);
  margin-top: var(--ipro-space-8);
}
.ipro-split-advertiser__cta { display: inline-flex; align-items: center; gap: var(--ipro-space-2); }
.ipro-split-advertiser__cta svg { width: 18px; height: 18px; }
.ipro-split-advertiser__more {
  display: inline-flex;
  align-items: center;
  gap: var(--ipro-space-2);
  font: 600 var(--ipro-text-base)/1 var(--ipro-font-body);
  color: var(--ipro-ink-900);
}
.ipro-split-advertiser__more svg { width: 18px; height: 18px; color: var(--ipro-vetiver-600); }
.ipro-split-advertiser__media {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--ipro-space-6);
  padding: var(--ipro-space-4);
  background: var(--ipro-surface-50);
  border-radius: var(--ipro-radius-lg);
}
@media (min-width: 640px) {
  .ipro-split-advertiser__media { padding: var(--ipro-space-8); }
}
.ipro-split-advertiser__illu {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 200px;
  border-radius: var(--ipro-radius-lg);
}
.ipro-split-advertiser__illu-main svg { width: 96px; height: 96px; color: var(--ipro-vetiver-600); }
.ipro-split-advertiser__illu-badge {
  position: absolute;
  right: 32%;
  bottom: 22%;
  display: grid; place-items: center;
  width: 52px; height: 52px;
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-lg);
}
.ipro-split-advertiser__illu-badge svg { width: 24px; height: 24px; color: var(--ipro-vetiver-600); }
.ipro-split-advertiser__stats {
  margin: 0;
  padding: var(--ipro-space-2) var(--ipro-space-4);
  list-style: none;
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-lg);
}
@media (min-width: 640px) {
  .ipro-split-advertiser__stats { padding: var(--ipro-space-2) var(--ipro-space-5); }
}
.ipro-split-advertiser__stat { display: flex; align-items: center; gap: var(--ipro-space-4); padding: var(--ipro-space-4) 0; }
.ipro-split-advertiser__stat + .ipro-split-advertiser__stat { border-top: 1px solid var(--ipro-line-100); }
.ipro-split-advertiser__stat-icon {
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: var(--ipro-radius-md);
  background: var(--ipro-surface-50);
}
.ipro-split-advertiser__stat-icon svg { width: 20px; height: 20px; color: var(--ipro-vetiver-600); }
.ipro-split-advertiser__stat-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ipro-split-advertiser__stat-num {
  font: 500 var(--ipro-text-3xl)/1.1 var(--ipro-font-data);
  font-variant-numeric: tabular-nums;
  color: var(--ipro-vetiver-600);
}
.ipro-split-advertiser__stat-unit { margin-left: 0.14em; }
.ipro-split-advertiser__stat-label { font: 400 var(--ipro-text-sm)/1.35 var(--ipro-font-body); color: var(--ipro-ink-700); }
.ipro-faq { padding-block: var(--ipro-section-y); background: var(--ipro-vetiver-50); }
.home .ipro-footer { margin-top: 0; }
.ipro-faq__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 72ch);
  gap: var(--ipro-space-10);
  align-items: start;
}
.ipro-faq__intro p { color: var(--ipro-ink-700); max-width: 40ch; margin-top: var(--ipro-space-3); }
.ipro-faq__contact {
  display: inline-block; margin-top: var(--ipro-space-4);
  color: var(--ipro-color-accent-text); font-weight: 600;
}
@media (max-width: 1023px) {
  .ipro-faq__inner { grid-template-columns: 1fr; gap: var(--ipro-space-6); }
}
.ipro-faq__list { display: grid; gap: var(--ipro-space-3); max-width: 72ch; }
.ipro-faq__answer { padding: var(--ipro-space-3) var(--ipro-space-4) var(--ipro-space-4); color: var(--ipro-ink-700); line-height: var(--ipro-leading-normal); }
.ipro-faq__answer p { margin: 0; }
.ipro-chip__input,
.ipro-segment__input,
.ipro-switch__input,
.ipro-zonebtn__input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);   
  clip-path: inset(50%);
  white-space: nowrap;
}
.ipro-chip { display: inline-flex; margin: 0; cursor: pointer; }
.ipro-chip__label {
  display: inline-flex; align-items: center; gap: 6px;
  min-height: 44px; padding: 0 var(--ipro-space-4);
  background: var(--ipro-surface-0);
  color: var(--ipro-ink-700);
  font: 500 var(--ipro-text-sm)/1.2 var(--ipro-font-body);
  border: 1.5px solid var(--ipro-line-field);
  border-radius: var(--ipro-radius-md);
  white-space: nowrap;
  transition: background-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              border-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-chip:hover .ipro-chip__label { border-color: var(--ipro-vetiver-600); background: var(--ipro-vetiver-50); color: var(--ipro-vetiver-800); }
.ipro-chip__check { display: none; width: 14px; height: 14px; flex: none; }
.ipro-chip__input:checked + .ipro-chip__label { background: var(--ipro-brand-700); border-color: var(--ipro-brand-700); color: var(--ipro-on-dark-full); }
.ipro-chip__input:checked + .ipro-chip__label .ipro-chip__check { display: block; }
.ipro-chip:has(.ipro-chip__input:checked) .ipro-chip__label { background: var(--ipro-brand-700); border-color: var(--ipro-brand-700); color: var(--ipro-on-dark-full); }
.ipro-chip:has(.ipro-chip__input:checked) .ipro-chip__check { display: block; }
.ipro-chip__input:focus-visible + .ipro-chip__label { outline: 2px solid var(--ipro-brand-600); outline-offset: 2px; }
.ipro-chip__input:disabled + .ipro-chip__label { background: var(--ipro-surface-200); border-color: var(--ipro-line-200); color: var(--ipro-ink-300); cursor: not-allowed; }
.ipro-segment {
  display: inline-flex; margin: 0; padding: 0; min-width: 0;
  background: var(--ipro-surface-0);
  border: 1.5px solid var(--ipro-line-field);
  border-radius: var(--ipro-radius-md);
  overflow: hidden;
}
.ipro-segment__opt { display: inline-flex; cursor: pointer; margin-bottom: 0; }
.ipro-segment__opt + .ipro-segment__opt { border-left: 1.5px solid var(--ipro-line-field); }
.ipro-segment__label {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: 0 var(--ipro-space-4);
  color: var(--ipro-ink-700);
  font: 600 var(--ipro-text-sm)/1.2 var(--ipro-font-body);
  white-space: nowrap;
  transition: background-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-segment__opt:hover .ipro-segment__label { background: var(--ipro-vetiver-50); color: var(--ipro-vetiver-700); }
.ipro-segment__input:checked + .ipro-segment__label { background: var(--ipro-brand-700); color: var(--ipro-on-dark-full); }
.ipro-segment__opt:hover .ipro-segment__input:checked + .ipro-segment__label { background: var(--ipro-brand-800); }
.ipro-segment__input:focus-visible + .ipro-segment__label { outline: 2px solid var(--ipro-brand-600); outline-offset: -3px; }
.ipro-segment__input:disabled + .ipro-segment__label { background: var(--ipro-surface-200); color: var(--ipro-ink-300); cursor: not-allowed; }
.ipro-switch {
  display: inline-flex; align-items: center; gap: var(--ipro-space-3);
  min-height: 44px; cursor: pointer;
  color: var(--ipro-ink-900);
  font: 500 var(--ipro-text-sm)/1.4 var(--ipro-font-body);
}
.ipro-switch__track {
  position: relative; flex: none;
  width: 38px; height: 22px;
  background: var(--ipro-surface-0);
  border: 1.5px solid var(--ipro-line-field);
  border-radius: var(--ipro-radius-lg);
  transition: background-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              border-color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-switch__track::after {
  content: ""; position: absolute; top: 2px; left: 2px;
  width: 14px; height: 14px;
  border-radius: 50%; 
  background: var(--ipro-ink-500);
  transition: transform var(--ipro-transition-fast) var(--ipro-easing-standard),
              background-color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-switch__input:checked ~ .ipro-switch__track { background: var(--ipro-brand-700); border-color: var(--ipro-brand-700); }
.ipro-switch__input:checked ~ .ipro-switch__track::after { transform: translateX(17px); background: var(--ipro-on-dark-full); }
.ipro-switch__input:focus-visible ~ .ipro-switch__track { outline: 2px solid var(--ipro-brand-600); outline-offset: 2px; }
.ipro-switch__input:disabled ~ .ipro-switch__track { background: var(--ipro-surface-200); border-color: var(--ipro-line-200); }
.ipro-switch__input:disabled ~ .ipro-switch__track::after { background: var(--ipro-ink-300); }
.ipro-switch__input:disabled ~ .ipro-switch__text { color: var(--ipro-ink-300); }
.ipro-minmax { margin: 0; padding: 0; border: 0; min-width: 0; }
.ipro-minmax > legend { padding: 0; } 
.ipro-minmax__row { display: flex; align-items: flex-end; gap: var(--ipro-space-2); }
.ipro-minmax__item { display: flex; flex-direction: column; gap: var(--ipro-space-1); flex: 1 1 0; min-width: 0; }
.ipro-minmax__lab { font: 500 var(--ipro-text-xs)/1.2 var(--ipro-font-body); color: var(--ipro-ink-500); letter-spacing: 0.02em; }
.ipro-minmax__input { font-variant-numeric: tabular-nums; }
.ipro-minmax__sep { flex: none; color: var(--ipro-ink-500); line-height: 1; padding-bottom: var(--ipro-space-3); }
.ipro-select {
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  padding-right: 38px;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--ipro-ink-700) 50%),
    linear-gradient(135deg, var(--ipro-ink-700) 50%, transparent 50%);
  background-position: calc(100% - 19px) 50%, calc(100% - 13px) 50%;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  text-overflow: ellipsis;
}
.ipro-select:disabled { background-color: var(--ipro-surface-200); color: var(--ipro-ink-300); cursor: not-allowed; }
.ipro-select[multiple], .ipro-select[size]:not([size="1"]) { background-image: none; padding-right: var(--ipro-space-3); height: auto; }
@supports (appearance: base-select) {
  .ipro-select,
  .ipro-select::picker(select) {
    appearance: base-select;
  }
  .ipro-select {
    background-image: none;
    align-items: center; 
    padding-right: var(--ipro-space-3); 
    overflow: hidden;
  }
  .ipro-select::picker-icon {
    color: var(--ipro-ink-500);
    transition: rotate 150ms var(--ipro-easing-standard);
  }
  .ipro-select:open::picker-icon { rotate: 180deg; }
  .ipro-select::picker(select) {
    background: var(--ipro-surface-0);
    border: 1px solid var(--ipro-line-200);
    border-radius: var(--ipro-radius-lg);
    box-shadow: var(--ipro-shadow-md);
    padding: var(--ipro-space-1);
  }
  .ipro-select option {
    display: flex;
    align-items: center;
    gap: var(--ipro-space-2);
    padding: var(--ipro-space-2) var(--ipro-space-3);
    border-radius: var(--ipro-radius-md);
    color: var(--ipro-ink-900);
    font: 400 var(--ipro-text-base)/1.4 var(--ipro-font-body);
    cursor: pointer;
  }
  .ipro-select option:hover,
  .ipro-select option:focus {
    background: var(--ipro-vetiver-50);
    color: var(--ipro-ink-900);
  }
  .ipro-select option:checked {
    color: var(--ipro-brand-700);
    font-weight: 500;
  }
  .ipro-select option::checkmark {
    order: 1;
    margin-left: auto;
    color: var(--ipro-brand-700);
  }
}
.ipro-field { display: flex; flex-direction: column; min-width: 0; }
.ipro-field__labelrow { display: flex; align-items: center; gap: var(--ipro-space-2); margin-bottom: var(--ipro-space-2); }
.ipro-field__labelrow .ipro-label { margin-bottom: 0; }
.ipro-field__optional {
  font: 500 var(--ipro-text-xs)/1.4 var(--ipro-font-data);
  color: var(--ipro-ink-500);
  border: 1px solid var(--ipro-line-200); 
  border-radius: var(--ipro-radius-sm);
  padding: 0 var(--ipro-space-2);
  white-space: nowrap;
}
.ipro-field__hint { margin: var(--ipro-space-2) 0 0; font: 400 var(--ipro-text-sm)/1.4 var(--ipro-font-body); color: var(--ipro-ink-500); }
.ipro-zonebtn { display: inline-flex; margin: 0; cursor: pointer; }
.ipro-zonebtn__label {
  display: inline-flex; align-items: center;
  min-height: 40px; padding: 0 var(--ipro-space-4);
  background: var(--ipro-surface-0);
  color: var(--ipro-ink-700);
  font: 600 var(--ipro-text-sm)/1.2 var(--ipro-font-body);
  border: 1.5px solid var(--ipro-line-field);
  border-radius: var(--ipro-radius-md);
  white-space: nowrap;
  transition: background-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              border-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              color var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-zonebtn:hover .ipro-zonebtn__label { border-color: var(--ipro-vetiver-600); color: var(--ipro-vetiver-700); }
.ipro-zonebtn__input:checked + .ipro-zonebtn__label { background: var(--ipro-brand-700); border-color: var(--ipro-brand-700); color: var(--ipro-on-dark-full); }
.ipro-zonebtn:has(.ipro-zonebtn__input:checked) .ipro-zonebtn__label { background: var(--ipro-brand-700); border-color: var(--ipro-brand-700); color: var(--ipro-on-dark-full); }
.ipro-zonebtn__input:focus-visible + .ipro-zonebtn__label { outline: 2px solid var(--ipro-brand-600); outline-offset: 2px; }
.ipro-zonebtn__input:disabled + .ipro-zonebtn__label { background: var(--ipro-surface-200); border-color: var(--ipro-line-200); color: var(--ipro-ink-300); cursor: not-allowed; }
.ipro-eyebrow--mono {
  display: inline-flex; align-items: baseline; gap: var(--ipro-space-3);
  font-family: var(--ipro-font-data); font-weight: 500;
  color: var(--ipro-ink-500);
}
.ipro-eyebrow__num { color: var(--ipro-brand-700); font-weight: 600; }
.ipro-rubrique {
  display: flex; align-items: center; gap: var(--ipro-space-3);
  margin: 0 0 var(--ipro-space-3);
  font-family: var(--ipro-font-data); font-size: var(--ipro-text-eyebrow);
  color: var(--ipro-ink-500);
}
.ipro-rubrique b { color: var(--ipro-ink-900); font-weight: 600; }
.ipro-rubrique__rule { flex: 1; height: 1px; background: var(--ipro-line-100); min-width: var(--ipro-space-4); }
.ipro-rubrique__meta { color: var(--ipro-ink-700); font-weight: 500; white-space: nowrap; }
.ipro-indic {
  display: flex; flex-direction: column; gap: var(--ipro-space-2);
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-200);
  border-radius: var(--ipro-radius-lg);
  padding: var(--ipro-space-5);
}
.ipro-indic__label { font: 600 var(--ipro-text-base)/1.3 var(--ipro-font-body); color: var(--ipro-ink-900); }
.ipro-indic__note { font-size: var(--ipro-text-sm); color: var(--ipro-ink-500); }
.ipro-indic__val { display: flex; align-items: baseline; gap: var(--ipro-space-2); margin-top: var(--ipro-space-3); }
.ipro-indic__num {
  font: 600 var(--ipro-text-4xl)/1 var(--ipro-font-data);
  color: var(--ipro-ink-900);
  letter-spacing: -0.01em;
  font-variant-numeric: tabular-nums;
  border-bottom: 2px dashed var(--ipro-line-200);
  padding-bottom: 2px;
}
.ipro-indic__unit { font: 500 var(--ipro-text-sm)/1.2 var(--ipro-font-body); color: var(--ipro-ink-500); }
.ipro-indic__todo { margin-top: var(--ipro-space-2); font: 500 var(--ipro-text-xs)/1.4 var(--ipro-font-data); color: var(--ipro-laiton-700); }
.ipro-tag__close svg { width: 14px; height: 14px; }
.ipro-alertcard {
  position: relative; overflow: hidden;
  display: grid; grid-template-columns: 1fr; gap: var(--ipro-space-6); align-items: center;
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-200);
  border-radius: var(--ipro-radius-lg);
  padding: var(--ipro-space-6);
}
@media (min-width: 768px) { .ipro-alertcard { grid-template-columns: 1fr 1.1fr; } }
.ipro-alertcard__trame {
  position: absolute; inset: 0; pointer-events: none;
  background-image: repeating-linear-gradient(45deg, var(--ipro-trame-on-light) 0 1px, transparent 1px 7px);
  -webkit-mask-image: linear-gradient(90deg, transparent 60%, var(--ipro-ink-900));
  mask-image: linear-gradient(90deg, transparent 60%, var(--ipro-ink-900));
}
.ipro-alertcard__body { position: relative; }
.ipro-alertcard__title { display: flex; align-items: center; gap: var(--ipro-space-2); margin: 0; }
.ipro-alertcard__title svg { color: var(--ipro-vetiver-600); flex: none; }
.ipro-alertcard__lede { margin-top: var(--ipro-space-2); color: var(--ipro-ink-700); max-width: 42ch; }
.ipro-alertcard__form { position: relative; display: flex; flex-direction: column; gap: var(--ipro-space-4); }
.ipro-alertcard__freq { display: flex; align-items: center; gap: var(--ipro-space-3); flex-wrap: wrap; }
.ipro-alertcard__fields { display: flex; gap: var(--ipro-space-3); flex-wrap: wrap; }
.ipro-alertcard__fields .ipro-input { flex: 1 1 220px; width: auto; min-width: 0; }
.ipro-alertcard__fields .ipro-btn { flex: none; }
.ipro-alertcard__legal { margin: 0; font-size: var(--ipro-text-sm); line-height: var(--ipro-leading-snug); color: var(--ipro-ink-500); }
.ipro-cote-line { position: relative; display: block; width: 64px; height: 1.5px; background: var(--ipro-laiton-500); }
.ipro-cote-line::before,
.ipro-cote-line::after {
  content: ""; position: absolute; bottom: -3.5px;
  width: 1.5px; height: 9px;
  background: var(--ipro-laiton-500);
  transform: rotate(45deg);
}
.ipro-cote-line::before { left: 0; }
.ipro-cote-line::after { right: 0; }
.ipro-cote-line--vetiver,
.ipro-cote-line--vetiver::before,
.ipro-cote-line--vetiver::after { background: var(--ipro-vetiver-600); }
.ipro-trame--vetiver {
  --ipro-trame-vetiver: color-mix(in srgb, var(--ipro-vetiver-700) 10%, transparent);
  background-color: var(--ipro-vetiver-50);
  background-image: repeating-linear-gradient(45deg, var(--ipro-trame-vetiver) 0 1px, transparent 1px 7px);
}
.ipro-on-dark :focus-visible { outline-color: var(--ipro-laiton-300); }
.ipro-on-dark .ipro-chip__input:focus-visible + .ipro-chip__label,
.ipro-on-dark .ipro-segment__input:focus-visible + .ipro-segment__label,
.ipro-on-dark .ipro-zonebtn__input:focus-visible + .ipro-zonebtn__label,
.ipro-on-dark .ipro-switch__input:focus-visible ~ .ipro-switch__track { outline-color: var(--ipro-laiton-300); }
.ipro-card__link { color: inherit; text-decoration: none; }
.ipro-card__link:hover { text-decoration: none; }
.ipro-card__link::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: var(--ipro-radius-lg); }
.ipro-card__link:focus-visible { outline: none; }
.ipro-card__link:focus-visible::after { outline: 2px solid var(--ipro-brand-600); outline-offset: -2px; }
.ipro-card:has(.ipro-card__link:focus-visible) {
  outline: 3px solid var(--ipro-brand-600);
  outline-offset: 2px;
}
.ipro-card:has(.ipro-card__link:focus-visible) .ipro-card__link:focus-visible::after { outline: none; }
.ipro-card__media-placeholder.ipro-trame--vetiver svg { color: var(--ipro-vetiver-500); }
.ipro-card__ph-cap {
  position: absolute;
  left: var(--ipro-space-3); right: var(--ipro-space-3); bottom: var(--ipro-space-2);
  font: 500 var(--ipro-text-xs)/1.3 var(--ipro-font-data);
  letter-spacing: 0.04em;
  color: var(--ipro-vetiver-600);
}
.ipro-card__cat {
  margin: 0;
  font: 500 var(--ipro-text-xs)/1.3 var(--ipro-font-data);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ipro-ink-500);
}
.ipro-card__loc { margin: 0; font: 400 var(--ipro-text-sm)/1.4 var(--ipro-font-body); color: var(--ipro-ink-700); }
.ipro-card__seller { margin: 0; font: 400 var(--ipro-text-xs)/1.4 var(--ipro-font-body); color: var(--ipro-ink-500); }
.ipro-card__kicker {
  margin: 0;
  font: 500 var(--ipro-text-xs)/1.3 var(--ipro-font-data);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ipro-ink-500);
}
.ipro-card__price-line { margin: 0; font-size: 19px; line-height: 1.2; }
.ipro-card__price-line .ipro-card__price { font-family: var(--ipro-font-data); font-variant-numeric: tabular-nums; }
.ipro-card__price-line .ipro-card__price small { font-size: var(--ipro-text-sm); }
.ipro-card__body .ipro-card__data {
  margin: 0;
  gap: var(--ipro-space-2);
  font: 400 var(--ipro-text-sm)/1.4 var(--ipro-font-data);
  font-variant-numeric: tabular-nums;
  color: var(--ipro-ink-700);
}
.ipro-card__foot {
  margin-top: auto;
  padding-top: var(--ipro-space-3);
  border-top: 1px solid var(--ipro-line-100);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--ipro-space-3);
}
.ipro-card__zone {
  display: inline-flex; align-items: center;
  padding: 4px var(--ipro-space-3);
  background: var(--ipro-surface-50);
  border-radius: var(--ipro-radius-sm);
  font: 500 var(--ipro-text-xs)/1.4 var(--ipro-font-data);
  color: var(--ipro-ink-700);
}
.ipro-card__more {
  font: 600 var(--ipro-text-sm)/1.4 var(--ipro-font-body);
  color: var(--ipro-ink-900);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ipro-card:hover .ipro-card__more { color: var(--ipro-vetiver-700); }
.ipro-card__agence {
  margin-top: auto;
  padding-top: var(--ipro-space-3);
  border-top: 1px solid var(--ipro-line-100);
  display: flex;
  justify-content: flex-end;
}
.ipro-card__agence img { height: 26px; width: auto; display: block; object-fit: contain; object-position: right center; }
.ipro-card--h { display: grid; grid-template-columns: 1fr; }
.ipro-card--h .ipro-card__body { padding-right: var(--ipro-space-10); }
.ipro-card--h .ipro-card__badges { flex-wrap: nowrap; }
.ipro-card--h .ipro-card__loc { font: 500 var(--ipro-text-xs)/1.4 var(--ipro-font-data); color: var(--ipro-ink-500); }
.ipro-card--h .ipro-card__excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ipro-card--h.is-new { background: var(--ipro-laiton-100); }
.ipro-card__meta {
  margin: auto 0 0;
  padding-top: var(--ipro-space-2);
  border-top: 1px solid var(--ipro-line-100);
  display: flex; flex-wrap: wrap; align-items: baseline;
  gap: var(--ipro-space-1) var(--ipro-space-2);
  font: 400 var(--ipro-text-xs)/1.4 var(--ipro-font-body);
  color: var(--ipro-ink-500);
}
.ipro-card__meta .ipro-card__cat { font-family: var(--ipro-font-body); font-weight: 600; color: var(--ipro-vetiver-700); }
.ipro-card__meta .ipro-card__ref { font-family: var(--ipro-font-data); letter-spacing: 0.02em; }
.ipro-card__meta .ipro-card__seller { font: inherit; color: inherit; }
@media (min-width: 768px) {
  .ipro-card--h { grid-template-columns: 260px 1fr; }
  .ipro-card--h .ipro-card__media { aspect-ratio: auto; min-height: 200px; height: 100%; }
}
.ipro-megapanel__spotgroup { margin-top: var(--ipro-space-5); }
.ipro-megapanel__spotlight {
  display: flex;
  align-items: center;
  gap: var(--ipro-space-2);
  min-height: 36px;
  margin: 0 calc(-1 * var(--ipro-space-3));
  padding: var(--ipro-space-1) var(--ipro-space-3);
  color: var(--ipro-ink-900);
  font-size: var(--ipro-text-sm);
  font-weight: 500;
  line-height: var(--ipro-leading-snug);
  text-decoration: none;
  transition: background-color var(--ipro-transition-fast) var(--ipro-easing-standard),
              box-shadow var(--ipro-transition-fast) var(--ipro-easing-standard);
}
.ipro-megapanel__spotlight:hover,
.ipro-megapanel__spotlight:focus-visible {
  background: var(--ipro-surface-50);
  color: var(--ipro-nav-couleur, var(--ipro-vetiver-700));
  box-shadow: inset 3px 0 0 0 var(--ipro-nav-couleur, var(--ipro-vetiver-700));
  text-decoration: none;
}
.ipro-brandrow__cta { display: none; } 
.ipro-brandrow__cta {
  letter-spacing: normal;
  box-shadow: inset 0 -3px 0 0 var(--ipro-laiton-500);
}
@media (min-width: 1280px) {
  .ipro-brandrow__cta { display: inline-flex; }
  .ipro-header__nav > .ipro-container--bleed { padding-inline: 24px; }
  .ipro-meganav__trigger { padding: 0 10px; gap: 4px; }
  .ipro-meganav__chevron { width: 12px; height: 12px; }
}
@media (min-width: 1280px) {
  .ipro-megapanel > .ipro-container {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    column-gap: var(--ipro-space-5);
    row-gap: 0;
    padding-block: 0 var(--ipro-space-3);
  }
  .ipro-megapanel__head {
    flex: 0 0 calc(100% + 2 * var(--ipro-pad-x));
    margin: 0 calc(-1 * var(--ipro-pad-x)) var(--ipro-space-4);
    padding: var(--ipro-space-3) var(--ipro-pad-x);
    border-bottom: 1px solid var(--ipro-line-100);
    border-bottom-color: color-mix(in srgb, var(--ipro-nav-couleur, var(--ipro-line-100)) 38%, transparent);
    font-size: var(--ipro-text-xs);
    letter-spacing: 0.16em;
  }
  .ipro-megapanel__cols {
    flex: 0 0 100%;
    min-width: 0;
  }
  .ipro-megapanel--natures {
    --ipro-megapanel-gutter: var(--ipro-space-6);
  }
  .ipro-megapanel--natures > .ipro-container {
    max-width: calc(840px + 2 * var(--ipro-space-6) + 2 * var(--ipro-pad-x));
  }
  .ipro-megapanel__list {
    margin-inline: calc(-1 * var(--ipro-space-3));
  }
  .ipro-megapanel__list li + li {
    border-top: 1px solid var(--ipro-line-100);
  }
  .ipro-megapanel__link {
    min-height: 36px;
    padding: var(--ipro-space-1) var(--ipro-space-3);
    gap: var(--ipro-space-3);
    font-size: var(--ipro-text-sm);
    font-weight: 400;
    line-height: var(--ipro-leading-snug);
    border-radius: 0;
    transition: background-color var(--ipro-transition-fast) var(--ipro-easing-standard),
                box-shadow var(--ipro-transition-fast) var(--ipro-easing-standard);
  }
  .ipro-megapanel__link:hover,
  .ipro-megapanel__link:focus-visible {
    background: var(--ipro-surface-50);
    color: var(--ipro-nav-couleur, var(--ipro-vetiver-700));
    box-shadow: inset 3px 0 0 0 var(--ipro-nav-couleur, var(--ipro-vetiver-700));
  }
  .ipro-megapanel__link[aria-current="page"] {
    background: var(--ipro-surface-50);
    color: var(--ipro-nav-couleur, var(--ipro-vetiver-700));
    font-weight: 600;
    box-shadow: inset 3px 0 0 0 var(--ipro-nav-couleur, var(--ipro-vetiver-700));
  }
  .ipro-megapanel__coltitle {
    margin: 0 calc(-1 * var(--ipro-space-3)) 0;
    padding: 0 var(--ipro-space-3) var(--ipro-space-2);
    font-size: var(--ipro-text-xs);
    font-weight: 600;
    letter-spacing: 0.14em;
    color: var(--ipro-ink-700);
    font-variant-numeric: tabular-nums;
  }
  .ipro-megapanel__link:has(.ipro-megapanel__zonename) {
    justify-content: space-between;
  }
  .ipro-megapanel__zonename { font-weight: 500; }
  .ipro-megapanel__communes {
    text-align: right;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.04em;
  }
  .ipro-megapanel__count {
    margin-left: auto;
    flex: none;
    font-family: var(--ipro-font-data);
    font-size: var(--ipro-text-xs);
    font-variant-numeric: tabular-nums;
    color: var(--ipro-ink-500);
    letter-spacing: 0.02em;
  }
  .ipro-megapanel__escape {
    min-height: 40px;
    margin: var(--ipro-space-2) calc(-1 * var(--ipro-space-3)) 0;
    padding: var(--ipro-space-2) var(--ipro-space-3) 0;
    gap: 2px;
    font-size: var(--ipro-text-sm);
  }
  .ipro-megapanel__escape small { letter-spacing: 0.14em; }
  .ipro-megapanel__footer,
  .ipro-megapanel__cta {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    min-height: 52px;
    margin-top: var(--ipro-space-4);
    padding-top: var(--ipro-space-2);
    border-top: 1px solid var(--ipro-line-100);
    border-top-color: color-mix(in srgb, var(--ipro-nav-couleur, var(--ipro-line-100)) 38%, transparent);
  }
  .ipro-megapanel__footer { justify-content: flex-start; }
  .ipro-megapanel__cta    { justify-content: flex-end; }
  .ipro-megapanel__all {
    font-size: var(--ipro-text-sm);
    letter-spacing: 0.01em;
  }
  .ipro-megapanel__cta .ipro-btn {
    height: 40px;
    padding: 0 var(--ipro-space-4);
    background: var(--ipro-surface-0);
    color: var(--ipro-vetiver-600);
    border: 1.5px solid var(--ipro-vetiver-600);
    border-radius: var(--ipro-radius-sm);
    box-shadow: none;
    font-size: var(--ipro-text-xs);
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }
  .ipro-megapanel__cta .ipro-btn:hover {
    background: var(--ipro-brand-50);
    color: var(--ipro-vetiver-800);
    border-color: var(--ipro-vetiver-800);
  }
  .ipro-megapanel__cta .ipro-btn:active {
    background: var(--ipro-brand-100);
    color: var(--ipro-vetiver-800);
  }
  .ipro-megapanel__hint {
    margin: 0 auto 0 0;
    font-family: var(--ipro-font-data);
    font-size: var(--ipro-text-xs);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--ipro-ink-500);
  }
  .ipro-megapanel__aside {
    padding-left: var(--ipro-space-5);
    border-left: 1px solid var(--ipro-line-100);
  }
  .ipro-megapanel__aside .ipro-megapanel__list {
    margin-inline: calc(-1 * var(--ipro-space-3));
  }
}
.ipro-archive-tools {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--ipro-space-3);
}
.ipro-archive-tools__count {
  font-family: var(--ipro-font-data);
  font-size: var(--ipro-text-sm);
  color: var(--ipro-ink-700);
}
.ipro-results__trust {
  display: flex;
  align-items: flex-start;
  gap: var(--ipro-space-3);
  margin: 0 0 var(--ipro-space-5);
  padding: var(--ipro-space-3) var(--ipro-space-4);
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-100);
  border-left: 3px solid var(--ipro-vetiver-600);
  border-radius: var(--ipro-radius-md);
  font-size: var(--ipro-text-sm);
  color: var(--ipro-ink-700);
}
.ipro-results__trust svg {
  flex: none;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  color: var(--ipro-vetiver-600);
}
.ipro-results__trust strong { color: var(--ipro-ink-900); }
.ipro-results__head {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start;
  gap: var(--ipro-space-3) var(--ipro-space-6);
  margin-bottom: var(--ipro-space-3);
}
.ipro-results__head > .ipro-results__count { margin: 0; }
.ipro-results__tri { position: relative; }
.ipro-tri { position: relative; }
.ipro-tri__resume {
  display: inline-flex; align-items: center; gap: var(--ipro-space-1); min-height: 44px; padding: 0 var(--ipro-space-2);
  font: 400 var(--ipro-text-sm)/1.3 var(--ipro-font-body); color: var(--ipro-ink-700); cursor: pointer; list-style: none; border-radius: var(--ipro-radius-sm);
}
.ipro-tri__resume::-webkit-details-marker { display: none; }
.ipro-tri__resume:focus-visible { outline: 2px solid var(--ipro-vetiver-600); outline-offset: 2px; }
.ipro-tri__resume strong { color: var(--ipro-ink-900); font-weight: 600; }
.ipro-tri__resume > .ipro-tri__chevron { width: 16px; height: 16px; }
.ipro-tri[open] > .ipro-tri__resume .ipro-tri__chevron { transform: rotate(180deg); }
.ipro-results__tri-liste {
  position: absolute; z-index: var(--ipro-z-dropdown); left: 0; top: 100%; min-width: 220px;
  margin: var(--ipro-space-1) 0 0; padding: var(--ipro-space-1); list-style: none;
  display: flex; flex-direction: column; gap: 2px;
  background: var(--ipro-surface-0); border: 1px solid var(--ipro-line-200); border-radius: var(--ipro-radius-md); box-shadow: var(--ipro-shadow-md);
}
.ipro-results__tri-lien {
  display: flex; align-items: center; min-height: 40px; padding: 0 var(--ipro-space-3);
  border-radius: var(--ipro-radius-sm);
  font: 400 var(--ipro-text-sm)/1.4 var(--ipro-font-body); color: var(--ipro-ink-900); text-decoration: none;
}
.ipro-results__tri-lien:hover, .ipro-results__tri-lien:focus-visible { background: var(--ipro-vetiver-50); text-decoration: none; }
.ipro-results__tri-lien[aria-current="true"] { color: var(--ipro-brand-700); font-weight: 600; }
@media (max-width: 767px) {
  .ipro-tri { width: 100%; }
  .ipro-results__tri { width: 100%; }
  .ipro-results__tri-liste { position: static; margin: var(--ipro-space-1) 0 0; box-shadow: none; min-width: 0; }
}
.ipro-results__head > .ipro-criteres { flex-basis: 100%; margin: 0; }
.ipro-section--resultats { padding-top: var(--ipro-space-8); }
.ipro-section--resultats .ipro-section__head { margin-bottom: var(--ipro-space-5); }
.ipro-resultats-tete__titre { font-size: var(--ipro-text-3xl); line-height: 1.2; margin: var(--ipro-space-2) 0 0; text-wrap: pretty; }
.ipro-resultats-tete__nb { color: var(--ipro-brand-700); font-weight: 600; }
.ipro-section--resultats .ipro-results__head { margin-bottom: var(--ipro-space-4); }
.ipro-results__head > .ipro-save-search { margin: 0 0 0 auto; }
.ipro-results__vide { display: grid; gap: var(--ipro-space-4); max-width: 62ch; }
.ipro-results__vide p { margin: 0; color: var(--ipro-ink-700); }
.ipro-results__vide-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ipro-space-3); }
.ipro-results__vide-actions > .ipro-save-search { margin: 0; }
.ipro-elargir { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--ipro-space-2); }
.ipro-results__vide-actions > .ipro-elargir { flex-basis: 100%; }
.ipro-elargir__lien {
  display: flex; align-items: center; justify-content: space-between; gap: var(--ipro-space-3); min-height: 44px; padding: var(--ipro-space-2) var(--ipro-space-3);
  border: 1px solid var(--ipro-line-200); border-radius: var(--ipro-radius-md); background: var(--ipro-surface-0);
  font: 500 var(--ipro-text-sm)/1.3 var(--ipro-font-body); color: var(--ipro-ink-900); text-decoration: none;
}
.ipro-elargir__lien:hover, .ipro-elargir__lien:focus-visible { border-color: var(--ipro-vetiver-600); background: var(--ipro-vetiver-50); text-decoration: none; }
.ipro-elargir__nb { font: 500 var(--ipro-text-sm)/1 var(--ipro-font-data); color: var(--ipro-vetiver-700); white-space: nowrap; }
@media (max-width: 480px) {
  .ipro-resultats-tete__titre { font-size: var(--ipro-text-xl); }
  .ipro-results__head > .ipro-save-search { margin-left: 0; width: 100%; }
  .ipro-results__head > .ipro-save-search .ipro-results__alerte { width: 100%; }
}
.ipro-card-grid--cap3 {
  grid-template-columns: 1fr;
  gap: var(--ipro-space-4);
}
@media (min-width: 560px) {
  .ipro-card-grid--cap3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ipro-space-5);
  }
}
@media (min-width: 1024px) {
  .ipro-card-grid--cap3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.ipro-card-grid--cap3 .ipro-card {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
}
.ipro-card-grid--cap3 .ipro-card__media {
  aspect-ratio: auto;
  height: 100%;
}
.ipro-card-grid--cap3 .ipro-card__ph-cap { display: none; }
@media (min-width: 560px) {
  .ipro-card-grid--cap3 .ipro-card {
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
  }
  .ipro-card-grid--cap3 .ipro-card__media {
    aspect-ratio: 3 / 2;
    height: auto;
  }
  .ipro-card-grid--cap3 .ipro-card__ph-cap {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    overflow-wrap: anywhere;
  }
}
.ipro-card__media-placeholder .ipro-card__ph-cap { color: var(--ipro-ink-700); }
.ipro-card__operation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--ipro-space-2);
  margin: calc(var(--ipro-space-4) * -1) calc(var(--ipro-space-4) * -1) 0;
  padding: var(--ipro-space-2) var(--ipro-space-4);
  border-bottom: 1px solid var(--ipro-line-100);
  border-left: 3px solid var(--ipro-line-200);
}
.ipro-card__operation-label {
  font: 600 var(--ipro-text-eyebrow)/20px var(--ipro-font-data);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.ipro-card__operation .ipro-badge {
  line-height: 20px;
  padding-block: 0;
}
.ipro-card__operation--location {
  background: var(--ipro-vetiver-50);
  border-left-color: var(--ipro-vetiver-600);
}
.ipro-card__operation--location .ipro-card__operation-label { color: var(--ipro-vetiver-700); }
.ipro-card__operation--vente {
  background: var(--ipro-surface-50);
  border-left-color: var(--ipro-ink-900);
}
.ipro-card__operation--vente .ipro-card__operation-label { color: var(--ipro-ink-900); }
.ipro-card__operation--cession {
  background: var(--ipro-laiton-100);
  border-left-color: var(--ipro-laiton-500);
}
.ipro-card__operation--cession .ipro-card__operation-label { color: var(--ipro-ink-900); }
.ipro-card__ratio {
  display: block;
  font: 500 var(--ipro-text-sm)/1.4 var(--ipro-font-data);
  color: var(--ipro-ink-700);
}
.ipro-card__divisible { color: var(--ipro-ink-500); }
.ipro-card__trust {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--ipro-space-2);
  margin: 0;
  font-size: var(--ipro-text-sm);
  color: var(--ipro-ink-700);
}
.ipro-card__trust svg {
  flex: none;
  width: 15px;
  height: 15px;
  color: var(--ipro-success-600);
}
.ipro-card__trust time {
  font-family: var(--ipro-font-data);
  color: var(--ipro-ink-500);
}
.ipro-card:hover .ipro-card__trust time,
.ipro-card:hover .ipro-card__divisible { color: var(--ipro-ink-700); }
.ipro-empty {
  background: var(--ipro-surface-0);
  border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-lg);
  padding: var(--ipro-space-6) var(--ipro-space-5);
}
@media (min-width: 1024px) {
  .ipro-empty { padding: var(--ipro-space-8) var(--ipro-space-6); }
}
.ipro-empty h2 { margin: 0 0 var(--ipro-space-3); }
.ipro-empty p {
  margin: 0 0 var(--ipro-space-5);
  max-width: 62ch;
  color: var(--ipro-ink-700);
}
.ipro-empty__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--ipro-space-3);
  margin: 0 0 var(--ipro-space-5);
}
.ipro-empty__zones {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--ipro-space-2);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (min-width: 560px) {
  .ipro-empty__zones { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.ipro-empty__zone-link {
  display: block;
  min-height: 44px;
  padding: var(--ipro-space-3);
  border: 1px solid var(--ipro-line-100);
  border-radius: var(--ipro-radius-md);
  color: var(--ipro-ink-900);
  font-size: var(--ipro-text-base);
  font-weight: 600;
  text-decoration: none;
}
.ipro-empty__zone-link:hover {
  background: var(--ipro-vetiver-50);
  border-color: var(--ipro-line-200);
}
@media (max-width: 560px) {
  .ipro-btn {
    height: auto;
    min-height: 44px;
    white-space: normal;
    max-width: 100%;
  }
}
