/* Customer review markers are kept inside the existing image frames. */
.sf-image-review-badge {
  position: absolute;
  z-index: 2;
  left: 10px;
  bottom: 10px;
  display: grid;
  gap: 2px;
  max-width: calc(100% - 20px);
  padding: 8px 10px;
  border: 1px solid #9a7124;
  border-radius: 9px;
  background: #fff4d7;
  color: #49320a;
  box-shadow: 0 3px 14px #06222b24;
  font: 400 10px/1.35 'Nunito Sans',sans-serif;
  letter-spacing: normal;
  text-transform: none;
  pointer-events: none;
  overflow-wrap: anywhere;
}
.sf-image-review-badge strong { font-size: 11px; font-weight: 800; }
.styles_op_1qhel1x_media .sf-image-review-badge { top: 12px; bottom: auto; left: 12px; max-width: calc(100% - 24px); }
.sf-reha-placeholder { position: absolute; inset: 0; color: #fff; background: radial-gradient(ellipse at 50% 20%,#147c99,#0b4e63 65%); }
.sf-reha-placeholder-label { position: absolute; top: 14px; left: 14px; right: 14px; display: block; padding: 10px 12px; border: 1px dashed #ffffffa6; border-radius: 9px; background: #06222b66; color: #fff; font-size: 12px; line-height: 1.4; font-weight: 800; text-align: center; }
.sf-reha-placeholder-icon { position: absolute; top: 25%; left: 50%; width: 58px; height: 58px; transform: translateX(-50%); opacity: .7; }

/* The shared sticky panels remain readable when a device uses a short viewport. */
@media (min-width: 861px) and (max-height: 620px) {
  body .styles_op_14enbqk_panel { position: relative !important; top: auto !important; }
}

/* Keep source grid tracks shrinkable instead of hiding long text at narrow widths. */
body :is(.styles_op_y8llf9_grid,.styles_op_16i6c5e_grid,.styles_op_16i6c6s_grid,.styles_op_15wsy6r_grid) > * { min-width: 0; }
body :is(.styles_op_1wpdvnk_headText,.styles_op_15wsy6r_head,.styles_op_16i6c6s_head,.styles_op_16i6c6t_head) { min-width: 0; }

@media (max-width: 420px) {
  .sf-image-review-badge { left: 8px; bottom: 8px; max-width: calc(100% - 16px); padding: 7px 9px; }
}
