/* Scoped to the wedding slider. Keep existing editorial columns and spacing. */
.forest-story__media.forest-wedding-gallery{position:relative;align-self:start;margin:0;overflow:hidden;aspect-ratio:auto;height:min(858px,91vh);height:min(858px,91svh);min-width:0;background:var(--pine,#0a261c)}
.forest-wedding-gallery__slides,.forest-wedding-gallery__slide{width:100%;height:100%}
.forest-wedding-gallery .forest-wedding-gallery__slide img{display:block;width:100%;height:100%;aspect-ratio:2/3;min-height:0;max-height:none;object-fit:cover;object-position:center}
.forest-wedding-gallery [hidden]{display:none!important}
.forest-wedding-gallery__controls{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;gap:8px;padding:6px;border-radius:2px;background:rgba(10,38,28,.91);color:#fff}
.forest-wedding-gallery__controls button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0;padding:0;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5);border-radius:2px;cursor:pointer;font:400 24px/1 var(--sans,Arial)}
.forest-wedding-gallery__controls button:hover{color:var(--sand-light,#dcc69e);border-color:currentColor}
.forest-wedding-gallery__controls span{min-width:45px;text-align:center;font:500 13px/1.2 var(--sans,Arial);font-variant-numeric:tabular-nums}
.forest-wedding-gallery:focus-visible,.forest-wedding-gallery__controls button:focus-visible{outline:3px solid var(--sand,#c7a56b);outline-offset:-4px}
/* v1.11.6: gentle crossfade in the same frame, every three seconds. */
.forest-wedding-gallery.is-ready .forest-wedding-gallery__slides{position:relative}
.forest-wedding-gallery.is-ready .forest-wedding-gallery__slide{position:absolute;inset:0;opacity:0;z-index:0;pointer-events:none;transition:opacity .65s ease}
.forest-wedding-gallery.is-ready .forest-wedding-gallery__slide.is-active{opacity:1;z-index:1;pointer-events:auto}
.forest-wedding-gallery__controls{z-index:2}
.forest-story__media img.forest-wedding-couple-image{object-position:left center}
@media(prefers-reduced-motion:reduce){.forest-wedding-gallery.is-ready .forest-wedding-gallery__slide{transition:none}}

/* v1.11.7: shorter viewport-aware frame, arrows at its vertical centre. */
.forest-wedding-gallery__controls{inset:0;display:block;padding:0;background:transparent;pointer-events:none}
.forest-wedding-gallery__controls button{position:absolute;pointer-events:auto;background:rgba(10,38,28,.85);box-shadow:0 2px 10px rgba(0,0,0,.15)}
.forest-wedding-gallery__controls [data-wedding-prev]{left:12px;top:50%;transform:translateY(-50%)}
.forest-wedding-gallery__controls [data-wedding-next]{right:12px;top:50%;transform:translateY(-50%)}
.forest-wedding-gallery__controls [data-wedding-count]{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);padding:9px 12px;background:rgba(10,38,28,.85);border-radius:2px}
.forest-wedding-gallery__controls [data-wedding-pause]{right:12px;bottom:12px}
