/* Existing managed promotion cards: content flows directly below the photo.
   All copy, prices, links and image resources remain in the source unchanged. */
body.venusmed-native .vm-document .vm-offer-card:has(>.vm-managed-offer) {
  --min-height:0;--justify-content:flex-start;
  box-sizing:border-box;height:auto!important;min-height:0!important;max-height:none!important;
  padding:0!important;align-self:stretch!important;
}
body.venusmed-native .vm-document .vm-offer-card>.vm-managed-offer {
  box-sizing:border-box;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;
  align-items:stretch!important;width:100%!important;height:auto!important;min-height:0!important;
  flex:0 0 auto!important;margin:0!important;padding:0!important;gap:0!important;
}
/* A uniform frame reserves space while lazy images load. The established
   cover framing keeps these ordinary promotional photos full bleed. */
body.venusmed-native .vm-document .vm-offer-card>.vm-managed-offer>.elementor-widget-image,
body.venusmed-native .vm-document .vm-offer-card>.vm-managed-offer>.elementor-widget-image>.elementor-widget-container {
  box-sizing:border-box;width:100%!important;height:260px!important;min-height:260px!important;
  margin:0!important;padding:0!important;flex:0 0 260px!important;background:#faf7f5;
}
body.venusmed-native .vm-document .vm-offer-card>.vm-managed-offer>.elementor-widget-image a {
  display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;
}
body.venusmed-native .vm-document .vm-offer-card>.vm-managed-offer>.elementor-widget-image img {
  display:block!important;width:100%!important;height:260px!important;min-height:0!important;max-height:none!important;
  object-fit:cover!important;object-position:center!important;margin:0!important;
}
body.venusmed-native .vm-document .vm-offer-card>.vm-managed-offer>.vm-offer-body {
  --min-height:0;--justify-content:flex-start;--align-items:stretch;
  box-sizing:border-box;display:block!important;width:100%!important;height:auto!important;min-height:0!important;
  flex:0 0 auto!important;align-self:start!important;margin:0!important;padding:20px!important;
}
body.venusmed-native .vm-document .vm-offer-card .vm-offer-body :is(.e-con,.e-con-inner) {
  --min-height:0;--justify-content:flex-start;--align-items:stretch;
  box-sizing:border-box;display:flex!important;flex-direction:column!important;justify-content:flex-start!important;
  align-items:stretch!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;
  flex:0 0 auto!important;align-self:start!important;margin:0!important;padding:0!important;gap:12px!important;
}
body.venusmed-native .vm-document .vm-offer-card .vm-offer-body .elementor-widget,
body.venusmed-native .vm-document .vm-offer-card .vm-offer-body .elementor-widget-container {
  box-sizing:border-box;min-width:0!important;min-height:0!important;height:auto!important;
  margin:0!important;padding:0!important;align-self:start!important;
}
body.venusmed-native .vm-document .vm-offer-card .vm-offer-title {
  margin:0!important;text-align:left!important;line-height:1.3!important;
  overflow-wrap:break-word!important;word-break:normal!important;
}
body.venusmed-native .vm-document .vm-offer-card .vm-offer-body p:not(.vm-price-value) {
  margin:0!important;text-align:left!important;line-height:1.6!important;
}
/* Several older cards store the price first. Keep their DOM/content intact,
   while consistently presenting title, description and then price. */
body.venusmed-native .vm-document .vm-offer-card .vm-offer-body>.e-con-inner>:is(.vm-price-line,.vm-offer-price-wrap) {
  order:2!important;margin:0!important;padding-top:4px!important;
}
body.venusmed-native .vm-document .vm-offer-card .vm-offer-body>.e-con-inner>.vm-offer-action {order:3!important}
body.venusmed-native .vm-document .vm-offer-card .vm-offer-body .vm-price-line>.e-con-inner {
  display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:baseline!important;
  justify-content:flex-start!important;gap:5px 10px!important;margin:0!important;padding:0!important;
}
body.venusmed-native .vm-document .vm-offer-card .vm-price-line>.e-con-inner>.elementor-widget {
  width:auto!important;max-width:100%!important;flex:0 0 auto!important;align-self:baseline!important;
}
body.venusmed-native .vm-document .vm-offer-card .vm-price-current .elementor-heading-title {
  font-size:32px!important;line-height:1.2!important;color:#382c2f!important;
}
body.venusmed-native .vm-document .vm-offer-card :is(.vm-price-prefix,.vm-price-previous) .elementor-heading-title {
  font-size:18px!important;line-height:1.3!important;color:#6b5f64!important;
}
/* Empty shells left after the approved booking-button cleanup add no spacing.
   A shell containing any actual content or control does not match. */
body.venusmed-native .vm-document .vm-offer-card .vm-offer-action:has(>.e-con-inner:only-child:empty),
body.venusmed-native .vm-document .vm-offer-card .vm-offer-action:has(>.elementor-widget-container:only-child:empty) {
  display:none!important;
}
@media(max-width:600px) {
  body.venusmed-native .vm-document .vm-offer-card>.vm-managed-offer>.vm-offer-body {padding:18px!important}
}
