/* An arched album: native horizontal scrolling, with a single settled focal photo. */
.love-gallery{width:calc(100% + 88px);margin:8px -44px 0;direction:ltr;position:relative}
.love-gallery-track{--love-card-width:min(60%,340px);--love-gap:12px;display:flex;align-items:center;gap:var(--love-gap);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:calc((100% - var(--love-card-width))/2);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:20px 0 30px;outline-offset:-5px;position:relative}
.love-gallery-track::-webkit-scrollbar{display:none}
.love-gallery-track:before,.love-gallery-track:after{content:'';height:1px;flex:0 0 calc((100% - var(--love-card-width))/2 - var(--love-gap))}
.love-gallery-slide{flex:0 0 var(--love-card-width);min-width:0;scroll-snap-align:center;scroll-snap-stop:always;position:relative}
.love-gallery .love-gallery-card{display:block;position:relative;width:100%;margin:0;padding:8px 8px 12px;border:1px solid #c4b291;border-radius:48% 48% 3px 3px;background:#fbf7ef;box-shadow:0 9px 22px #8071581c;transform:none;overflow:hidden;color:var(--deep);-webkit-tap-highlight-color:transparent;touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none}
.love-gallery .love-gallery-photo{display:block;overflow:hidden;border-radius:48% 48% 0 0;background:#e8e3d6;aspect-ratio:4/5}
.love-gallery .love-gallery-card img{display:block;width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;border-radius:48% 48% 0 0;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
.love-gallery-signature{display:block;padding:12px 2px 0;font:clamp(23px,5vw,31px)/1.6 WeddingScript,Georgia,serif;color:#9c8060;white-space:normal;overflow-wrap:anywhere}
.love-gallery.is-ready .love-gallery-card{transform:scale(var(--love-scale,.82));filter:blur(var(--love-blur,2px));opacity:var(--love-opacity,.56);will-change:transform;transform-origin:center 55%}
.love-gallery.is-ready .love-gallery-track{cursor:grab}
.love-gallery.is-ready[data-count="1"] .love-gallery-track{cursor:default}
.love-gallery-track.is-dragging{cursor:grabbing!important;scroll-snap-type:none;scroll-behavior:auto}
.love-gallery-track.is-dragging .love-gallery-card{cursor:grabbing}
.love-gallery-navigation{display:flex;align-items:center;justify-content:center;gap:18px;padding:0 20px;direction:ltr;margin-top:-2px}
.love-gallery-navigation[hidden]{display:none}
.love-gallery-arrow{border:1px solid #cdbd9e;border-radius:50%;background:#fbf7efb8;color:#8c795a;flex:0 0 44px;width:44px;height:44px;font:22px/1 Georgia,serif;transition:background .2s}
.love-gallery-arrow:hover{background:#e9e2d2}
.love-gallery-arrow:disabled{opacity:.3;cursor:default}
.love-gallery-hint{direction:rtl;display:flex;flex-direction:column;gap:3px;font-size:11px;line-height:2;color:var(--muted);margin:0}
.love-gallery-count{font:11px/1.7 var(--fa);direction:ltr;color:#9c8762;display:flex;align-items:center;justify-content:center;gap:8px}
.love-gallery-count b,.love-gallery-count i{font-weight:400;font-style:normal}
.love-gallery-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.love-gallery:not(.is-ready) .love-gallery-arrow,.love-gallery:not(.is-ready) .love-gallery-count{visibility:hidden}
@media(max-width:520px){.love-gallery{width:calc(100% + 52px);margin-inline:-26px}.love-gallery-track{--love-gap:8px;--love-card-width:60%;padding-block:14px 24px}.love-gallery .love-gallery-card{padding:6px 6px 10px}.love-gallery-navigation{gap:12px}.love-gallery-signature{padding-top:9px}.love-gallery-hint{font-size:10px}}
@media(max-width:359px){.love-gallery{width:calc(100% + 44px);margin-inline:-22px}.love-gallery-track{--love-card-width:61%}.love-gallery-navigation{gap:9px;padding-inline:12px}.love-gallery-hint{font-size:9px}}
@media(prefers-reduced-motion:reduce){.love-gallery-track{scroll-behavior:auto}.love-gallery-arrow{transition:none}}
@media print{.love-gallery-track{overflow:visible;display:grid;grid-template-columns:repeat(3,1fr);padding-inline:20px}.love-gallery-track:before,.love-gallery-track:after,.love-gallery-slide[data-clone],.love-gallery-navigation{display:none}.love-gallery.is-ready .love-gallery-card{transform:none;filter:none;opacity:1}.love-gallery-signature{font-size:20px}}
