.mds-ps, .mds-ps *, .mds-ps *::before, .mds-ps *::after { box-sizing: border-box; }
.mds-ps [hidden] { display: none !important; }
.mds-ps { margin: 0; max-width: 100%; }
.mds-ps .mds-ps__track { direction: ltr; }
.mds-ps .mds-ps__picture > img, .mds-ps .mds-ps__badge > img { margin: 0; padding: 0; border: 0; max-width: 100%; }
.mds-ps .mds-ps__sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
/* The component. All dimensions scale with the block, not the browser. */
    .mds-ps {
      --mds-ps-tape: #c76d7d;
      --mds-ps-tape-opacity: .87;
      --mds-ps-decoration-left: #e897cb;
      --mds-ps-decoration-right: #ffab3e;
      --mds-ps-paper: #fff;
      --mds-ps-focus: #075d3a;
      container-type: inline-size;
      position: relative; width: 100%; isolation: isolate;
    }
    .mds-ps .mds-ps__track {
      display: flex; flex-direction: column; position: relative;
      margin: 0; padding: 8.7cqw 0 7.1cqw; list-style: none;
    }
    .mds-ps .mds-ps__slide { position: relative; flex: 0 0 auto; margin: 0; padding: 0; width: 51.5%; }
    .mds-ps .mds-ps__slide + .mds-ps__slide { margin-top: -13cqw; }
    .mds-ps .mds-ps__slide--left { margin-left: 12.7%; }
    .mds-ps .mds-ps__slide--right { width: 48%; margin-left: 38.2%; }
    .mds-ps .mds-ps__slide:nth-child(1) { z-index: 1; }
    .mds-ps .mds-ps__slide:nth-child(2) { z-index: 2; }
    .mds-ps .mds-ps__slide:nth-child(3) { z-index: 3; margin-top: -5cqw; }
    .mds-ps .mds-ps__frame {
      position: relative; margin: 0; padding: 1.83cqw 1.83cqw 4.58cqw;
      border-radius: .45cqw; background: var(--mds-ps-paper);
      box-shadow: 0 1.6cqw 2.5cqw rgb(35 38 48 / .17);
      transform: rotate(-6deg); transform-origin: center;
    }
    .mds-ps .mds-ps__slide--right .mds-ps__frame { transform: rotate(5deg); }
    .mds-ps .mds-ps__frame::before {
      content: ""; position: absolute; z-index: 2; pointer-events: none;
      width: 13.5cqw; height: 4.1cqw; top: -4.8cqw; left: .7cqw;
      background: var(--mds-ps-tape); opacity: var(--mds-ps-tape-opacity); transform: rotate(-16deg);
    }
    .mds-ps .mds-ps__slide--right .mds-ps__frame::before { left: auto; right: -1.85cqw; top: -2.75cqw; transform: rotate(10deg); }
    .mds-ps .mds-ps__picture { display: block; position: relative; width: 100%; aspect-ratio: 4 / 3; overflow: hidden; background: #e8ebe8; }
    .mds-ps .mds-ps__picture > img, .mds-ps__picture > svg { display: block; width: 100%; height: 100%; object-fit: cover; }
    .mds-ps .mds-ps__badge {
      position: absolute; z-index: 3; left: -3.3cqw; top: calc(100% - .5cqw);
      width: 14.8cqw; aspect-ratio: 1; display: grid; place-items: center;
      border-radius: 40%; background: var(--mds-ps-paper); box-shadow: 0 .8cqw 1.2cqw rgb(35 38 48 / .13);
    }
    .mds-ps .mds-ps__badge > img, .mds-ps__badge > svg { width: 61%; height: 61%; object-fit: contain; display: block; }
    .mds-ps[data-count="1"] .mds-ps__track { padding-bottom: 19cqw; }
    .mds-ps[data-count="1"][data-icon="false"] .mds-ps__track { padding-bottom: 7.1cqw; }
    .mds-ps .mds-ps__decoration { position: absolute; pointer-events: none; z-index: 0; overflow: visible; }
    .mds-ps .mds-ps__decoration--left { left: 4.6%; top: 23.9cqw; width: 2.7cqw; height: 2.7cqw; color: var(--mds-ps-decoration-left); }
    .mds-ps .mds-ps__decoration--right { left: 85.6%; top: 20.3cqw; width: 3.7cqw; height: 3.7cqw; color: var(--mds-ps-decoration-right); }
    .mds-ps .mds-ps__decoration svg { width: 100%; height: 100%; display: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
    .mds-ps[data-decoration="stars"] [data-shape="stars"],
    .mds-ps[data-decoration="sparkles"] [data-shape="sparkles"],
    .mds-ps[data-decoration="hearts"] [data-shape="hearts"] { display: block; }
    .mds-ps .mds-ps__controls { display: none; }

    /* Mobile-only native scroll-snap. No cloned slides or carousel dependency. */
    .mds-ps[data-mobile="true"] .mds-ps__track {
      flex-direction: row; width: 100%; padding: 0; gap: 0; overflow-x: auto;
      scroll-snap-type: x mandatory; overscroll-behavior-x: contain;
      scrollbar-width: none;
      -webkit-overflow-scrolling: touch;
    }
    .mds-ps[data-mobile="true"] .mds-ps__slide {
      flex: 0 0 100%; width: 100%; margin: 0; padding: 11cqw 9cqw 28cqw;
      scroll-snap-align: center; scroll-snap-stop: always;
    }
    .mds-ps[data-mobile="true"] .mds-ps__frame { padding: 3cqw 3cqw 7.5cqw; border-radius: .8cqw; transform: rotate(-5deg); box-shadow: 0 2cqw 4cqw rgb(35 38 48 / .17); }
    .mds-ps[data-mobile="true"] .mds-ps__slide--right .mds-ps__frame { transform: rotate(5deg); }
    .mds-ps[data-mobile="true"] .mds-ps__frame::before { width: 23cqw; height: 7cqw; top: -2cqw; left: -1cqw; }
    .mds-ps[data-mobile="true"] .mds-ps__slide--right .mds-ps__frame::before { right: -2cqw; left: auto; }
    .mds-ps[data-mobile="true"] .mds-ps__badge { top: auto; bottom: 9cqw; left: 8cqw; width: 21cqw; }
    .mds-ps[data-mobile="true"] .mds-ps__decoration--left { top: 3cqw; left: 59%; width: 4.5cqw; height: 4.5cqw; }
    .mds-ps[data-mobile="true"] .mds-ps__decoration--right { top: 85cqw; left: 83%; width: 6cqw; height: 6cqw; }
    .mds-ps[data-mobile="true"] .mds-ps__track::-webkit-scrollbar { display: none; }
    .mds-ps[data-mobile="true"] .mds-ps__controls { display: block; position: absolute; inset: 0; z-index: 5; pointer-events: none; }
    .mds-ps .mds-ps__arrow {
      display: inline-grid; place-items: center; width: 44px; height: 44px;
      position: absolute; top: var(--mds-ps-arrow-y, 42.5cqw); transform: translateY(-50%);
      margin: 0; padding: 0; border: 1px solid #c8d5cc; border-radius: 50%; background: rgb(255 255 255 / .96); color: #086b43;
      box-shadow: 0 2px 7px rgb(0 0 0 / .12); pointer-events: auto;
    }
    .mds-ps .mds-ps__arrow[data-direction="previous"] { left: 13cqw; }
    .mds-ps .mds-ps__arrow[data-direction="next"] { right: 13cqw; }
    .mds-ps .mds-ps__chevron { display: block; width: 10px; height: 10px; border: solid currentColor; border-width: 0 2px 2px 0; transform: rotate(-45deg); margin-right: 3px; }
    .mds-ps [data-direction="previous"] .mds-ps__chevron { transform: rotate(135deg); margin-right: 0; margin-left: 3px; }

.mds-ps .mds-ps__arrow { cursor: pointer; appearance: none; background-image: none; text-shadow: none; }
.mds-ps .mds-ps__arrow::before, .mds-ps .mds-ps__arrow::after { display: none; }
.mds-ps .mds-ps__arrow:focus-visible { outline: 3px solid #075d3a; outline-offset: 3px; }
@media (max-width: 767px) {
.mds-ps:not([data-mobile="false"]) .mds-ps__track {
      flex-direction: row; width: 100%; padding: 0; gap: 0; overflow-x: auto;
      scroll-snap-type: x mandatory; overscroll-behavior-x: contain;
      scrollbar-width: none;
      -webkit-overflow-scrolling: touch;
    }
.mds-ps:not([data-mobile="false"]) .mds-ps__slide {
      flex: 0 0 100%; width: 100%; margin: 0; padding: 11cqw 9cqw 28cqw;
      scroll-snap-align: center; scroll-snap-stop: always;
    }
.mds-ps:not([data-mobile="false"]) .mds-ps__frame { padding: 3cqw 3cqw 7.5cqw; border-radius: .8cqw; transform: rotate(-5deg); box-shadow: 0 2cqw 4cqw rgb(35 38 48 / .17); }
.mds-ps:not([data-mobile="false"]) .mds-ps__slide--right .mds-ps__frame { transform: rotate(5deg); }
.mds-ps:not([data-mobile="false"]) .mds-ps__frame::before { width: 23cqw; height: 7cqw; top: -2cqw; left: -1cqw; }
.mds-ps:not([data-mobile="false"]) .mds-ps__slide--right .mds-ps__frame::before { right: -2cqw; left: auto; }
.mds-ps:not([data-mobile="false"]) .mds-ps__badge { top: auto; bottom: 9cqw; left: 8cqw; width: 21cqw; }
.mds-ps:not([data-mobile="false"]) .mds-ps__decoration--left { top: 3cqw; left: 59%; width: 4.5cqw; height: 4.5cqw; }
.mds-ps:not([data-mobile="false"]) .mds-ps__decoration--right { top: 85cqw; left: 83%; width: 6cqw; height: 6cqw; }
.mds-ps:not([data-mobile="false"]) .mds-ps__track::-webkit-scrollbar { display: none; }
.mds-ps:not([data-mobile="false"]) .mds-ps__controls { display: block; position: absolute; inset: 0; z-index: 5; pointer-events: none; }
}
@media (prefers-reduced-motion: reduce) { .mds-ps .mds-ps__track { scroll-behavior: auto !important; } }

/* Whole-collage height limits. Every non-interactive dimension already scales
   with the block's width, so reducing that width preserves the composition.
   Height/width ratios from the existing frame, gap and track-padding rules:
   1 photo: .5809 (or .6999 with icon); 2 photos: .84755; 3: 1.22045.
   Mobile: 1.065, or 1.136 for one photo without its icon (the existing
   single-photo padding rule adds .071). The 1px allowance avoids rounding overflow.
   An unset per-device height invalidates fit-width; its fallback is full width.
   No clipping, fixed-height empty space or transform scaling is involved. */
.mds-ps {
  --mds-ps-layout-ratio: .84755;
  --mds-ps-mobile-ratio: 1.065;
  --mds-ps-fit-width: calc((var(--mds-ps-max-height-desktop) - 1px) / var(--mds-ps-layout-ratio));
  max-width: min(100%, var(--mds-ps-fit-width, 100%));
  margin-inline: auto;
}
.mds-ps[data-count="1"] { --mds-ps-layout-ratio: .6999; }
.mds-ps[data-count="1"][data-icon="false"] { --mds-ps-layout-ratio: .5809; --mds-ps-mobile-ratio: 1.136; }
.mds-ps[data-count="3"] { --mds-ps-layout-ratio: 1.22045; }
@media (min-width: 768px) and (max-width: 1024px) {
  .mds-ps {
    --mds-ps-fit-width: calc((var(--mds-ps-max-height-tablet) - 1px) / var(--mds-ps-layout-ratio));
  }
}
@media (max-width: 767px) {
  .mds-ps {
    --mds-ps-fit-width: calc((var(--mds-ps-max-height-mobile) - 1px) / var(--mds-ps-mobile-ratio));
  }
}
