.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-21199 .elementor-element.elementor-element-e531348{width:var( --container-widget-width, 120px );max-width:120px;--container-widget-width:120px;--container-widget-flex-grow:0;top:23.991px;text-align:center;color:#FFFFFF;}.elementor-21199 .elementor-element.elementor-element-e531348 > .elementor-widget-container{background-color:var( --e-global-color-71e60e8 );padding:0px 0px 0px 0px;border-radius:20px 20px 20px 20px;}body:not(.rtl) .elementor-21199 .elementor-element.elementor-element-e531348{left:24.997px;}body.rtl .elementor-21199 .elementor-element.elementor-element-e531348{right:24.997px;}.elementor-21199 .elementor-element.elementor-element-e531348 a{color:var( --e-global-color-71e60e8 );}.elementor-21199 .elementor-element.elementor-element-c1b72ec{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--gap:3px 3px;--row-gap:3px;--column-gap:3px;--grid-auto-flow:row;--justify-items:center;}.elementor-21199 .elementor-element.elementor-element-4d5418e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-post-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-21199 .elementor-element.elementor-element-bbe5280{text-align:center;}.elementor-21199 .elementor-element.elementor-element-bbe5280 .elementor-heading-title{color:#002591;}.elementor-21199 .elementor-element.elementor-element-97484cc{--display:flex;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-21199 .elementor-element.elementor-element-a9b2de9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21199 .elementor-element.elementor-element-100c2d8{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-21199 .elementor-element.elementor-element-a49fba2{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:1024px){.elementor-21199 .elementor-element.elementor-element-c1b72ec{--grid-auto-flow:row;}.elementor-widget-theme-post-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-21199 .elementor-element.elementor-element-c1b72ec{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-theme-post-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}/* Start custom CSS */.ib-detail-card {
  background: #fff;
  border-radius: 16px;
  padding: 28px 32px;
  box-shadow: 0 4px 24px rgba(8,24,48,.08);
}

.ib-detail-ref {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .03em;
  color: #185FA5 !important;
  background: #EAF2FB;
  padding: 4px 12px;
  border-radius: 999px;
  margin-bottom: 14px;
}

.ib-detail-title {
  font-size: 32px !important;
  font-weight: 800 !important;
  color: #0F1724 !important;
  margin-bottom: 16px !important;
  line-height: 1.2 !important;
}

.ib-detail-desc, .ib-detail-desc * {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #4B5563 !important;
}
.ib-detail-desc { margin-bottom: 8px; }

/* Cases Titre de propriété / Surface / Ville avec icône */
.ib-stat-row { display: flex; gap: 10px; margin: 22px 0; }
.ib-stat, .ib-stat * {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #0F1724 !important;
}
.ib-stat {
  flex: 1;
  background: #F7FAFD;
  border: 1px solid #E5EEF7;
  border-radius: 14px;
  padding: 16px 8px;
  text-align: center;
}
.ib-stat::before { display: block; font-size: 22px; margin-bottom: 6px; }
.ib-stat-titre::before   { content: "📄"; }
.ib-stat-surface::before { content: "📐"; }
.ib-stat-ville::before   { content: "📍"; }
.ib-stat-chambres::before   { content: "🛌"; }

/* Quartier */
.ib-detail-lieu, .ib-detail-lieu * {
  font-size: 14px !important;
  color: #6B7280 !important;
}
.ib-detail-lieu::before {
  content: "Quartier : ";
  font-weight: 700;
  color: #374151 !important;
}

/* Bandeau prix */
.ib-detail-price-wrap {
  background: linear-gradient(135deg, #185FA5, #0F4A85);
  border-radius: 14px;
  padding: 18px 24px;
  margin-top: 20px;
}
.ib-detail-price, .ib-detail-price * {
  font-size: 26px !important;
  font-weight: 800 !important;
  color: #fff !important;
}

@media (max-width: 768px) {
  .ib-detail-card { padding: 20px; margin-top: 16px; }
  .ib-detail-title { font-size: 24px !important; }
  .ib-stat-row { flex-wrap: wrap; }
}/* End custom CSS */