/* Layout defaults are editable through each native Elementor element's controls. */
body.monpasie-home #programs .mp-editable-offer {
  --container-widget-width: 100%;
  min-width: 0;
  width: 100%;
}
:where(body.monpasie-home #programs) .mp-editable-offer { align-self: stretch; }
body.monpasie-home #programs .mp-editable-offer .elementor-widget { min-width: 0; }
:where(.mp-editable-offer) .elementor-widget-monpasie-offer-photo img {
  display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; transform: none;
}
:where(.mp-editable-offer) .elementor-widget-monpasie-offer-photo .elementor-widget-container { line-height: 0; }
:where(.mp-editable-offer) .mp-rate-value { margin: 0; }
:where(.mp-editable-offer) .mp-home-offer-values { flex-wrap: wrap; align-items: center; }
:where(.mp-editable-offer) .mp-home-offer-values .elementor-widget { width: auto; }
:where(.mp-editable-offer) .mp-home-period { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 2px; padding: 2px; border-radius: 10px; background: var(--mp-ice); box-shadow: inset 0 0 0 1px var(--mp-line); }
:where(.mp-editable-offer) .mp-home-period button { min-width: 0; min-height: 36px; padding: 4px 6px; border: 0; border-radius: 8px; background: transparent; color: var(--mp-ink); font-size: 13px; font-weight: 600; line-height: 1.3; white-space: normal; cursor: pointer; }
:where(.mp-editable-offer) .mp-home-period button.is-active { background: var(--mp-burgundy); color: #fff; }
:where(.mp-editable-offer) .mp-home-period button:focus-visible { outline: 2px solid var(--mp-burgundy); outline-offset: 2px; }
:where(.mp-editable-offer) .mp-home-offer-status { margin: 0; color: var(--mp-burgundy); font-size: 13px; }
:where(.mp-editable-offer) .elementor-button { display: block; width: 100%; text-align: left; }
:where(.mp-editable-offer) .elementor-button-content-wrapper { display: flex; justify-content: space-between; align-items: center; }
:where(.mp-editable-offer) .elementor-button-text { flex-grow: 0; }
@media (min-width: 1101px) {
  body.monpasie-home #programs .mp-offer-rail > .mp-editable-offer,
  body.monpasie-home #programs #offer-solo-rail > .mp-editable-offer:first-child { grid-column: span 2; }
}
@media (max-width: 760px) {
  body.monpasie-home #programs .mp-offer-rail > .mp-editable-offer { flex: 0 0 calc(100% - 48px); scroll-snap-align: center; }
  body.monpasie-home #programs .mp-offer-rail > .mp-editable-offer:first-child { scroll-snap-align: start; }
  body.monpasie-home #programs .mp-offer-rail > .mp-editable-offer:last-child { scroll-snap-align: end; }
}
@media (min-width: 761px) and (max-width: 1100px) {
  body.monpasie-home #programs #offer-solo-rail { grid-auto-rows: 1fr; }
}

/* Separate editable duration switch shares the approved period styling. */
:where(.mp-editable-offer) .mp-home-duration { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
:where(.mp-editable-offer) .mp-home-duration button:disabled { background: transparent; color: var(--mp-muted); opacity: .65; cursor: not-allowed; }
:where(.mp-editable-offer) .mp-home-duration-notice { margin: 8px 0 0; color: var(--mp-muted); font-size: 12px; line-height: 1.4; }

@media (max-width: 760px) {
  :where(.mp-editable-offer) .mp-home-period button { min-height: 40px; }
}
