:root{--p110-green:#13584d;--p110-teal:#1c7969;--p110-amber:#d9913d;--p110-blue:#4d6f9f;--p110-line:#d7e6e1}

/* Fiches villes : davantage d'air entre le menu et les KPI */
body.pdl110-city .city-kpi-wrap{margin-top:24px!important;margin-bottom:22px!important;padding-top:0!important}
body.pdl110-city .market-kpis{gap:16px!important}

/* Trois cartes de type de bien plus vivantes */
body.pdl110-city #types .property-cards{gap:18px!important}
body.pdl110-city #types .property-card{
  position:relative;overflow:hidden;border:1px solid var(--p110-line)!important;border-top-width:4px!important;
  border-radius:18px!important;box-shadow:0 8px 24px rgba(18,65,55,.06);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
body.pdl110-city #types .property-card::after{
  content:"";position:absolute;width:115px;height:115px;border-radius:50%;right:-52px;top:-52px;opacity:.18;pointer-events:none
}
body.pdl110-city #types .property-card:nth-child(1){background:linear-gradient(145deg,#f0faf7 0%,#fff 72%);border-top-color:#1b7c69!important}
body.pdl110-city #types .property-card:nth-child(1)::after{background:#3fb89d}
body.pdl110-city #types .property-card:nth-child(1) strong{color:#126858}
body.pdl110-city #types .property-card:nth-child(2){background:linear-gradient(145deg,#fff8ef 0%,#fff 72%);border-top-color:#d58b37!important}
body.pdl110-city #types .property-card:nth-child(2)::after{background:#f0b767}
body.pdl110-city #types .property-card:nth-child(2) strong{color:#9a5d17}
body.pdl110-city #types .property-card:nth-child(3){background:linear-gradient(145deg,#f2f6fc 0%,#fff 72%);border-top-color:#5776a6!important}
body.pdl110-city #types .property-card:nth-child(3)::after{background:#7894bc}
body.pdl110-city #types .property-card:nth-child(3) strong{color:#3e5e8c}
body.pdl110-city #types .property-card:hover{transform:translateY(-4px);box-shadow:0 15px 34px rgba(18,65,55,.11)}
body.pdl110-city #types .property-card em{font-weight:750}
body.pdl110-city #types .range-explain{border-left:4px solid #1b7c69!important;background:linear-gradient(90deg,#f0f8f5,#f8fbfa)!important}

/* Observatoire : couleur discrète, profondeur et micro-interactions */
body.pdl110-observatory main{
  background:radial-gradient(circle at 86% 8%,rgba(217,145,61,.10),transparent 25rem),
             radial-gradient(circle at 8% 18%,rgba(28,121,105,.09),transparent 28rem)
}
body.pdl110-observatory main>section:first-of-type{position:relative;overflow:hidden}
body.pdl110-observatory main>section:first-of-type::after{
  content:"";position:absolute;right:-110px;top:-130px;width:330px;height:330px;border-radius:50%;
  background:linear-gradient(135deg,rgba(28,121,105,.11),rgba(217,145,61,.08));pointer-events:none
}
body.pdl110-observatory .pdl110-obs-card{
  position:relative;overflow:hidden;border-radius:18px!important;border:1px solid var(--p110-line)!important;
  box-shadow:0 8px 24px rgba(18,65,55,.055);transition:transform .18s ease,box-shadow .18s ease
}
body.pdl110-observatory .pdl110-obs-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(18,65,55,.10)}
body.pdl110-observatory .pdl110-obs-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px}
body.pdl110-observatory .pdl110-obs-accent-1::before{background:#1c7969}
body.pdl110-observatory .pdl110-obs-accent-2::before{background:#d9913d}
body.pdl110-observatory .pdl110-obs-accent-3::before{background:#5776a6}
body.pdl110-observatory .pdl110-obs-accent-4::before{background:#68a85c}

@media(max-width:700px){
  body.pdl110-city .city-kpi-wrap{margin-top:18px!important}
  body.pdl110-city #types .property-cards{gap:12px!important}
}
