.moments-two{background:#101114;color:#fafafa;padding:88px 20px 72px;overflow:hidden;scroll-margin-top:80px;border-top:1px solid #242424}
.moments-two-heading{text-align:center;margin-bottom:38px}
.moments-two-heading>span{display:block;width:40px;height:3px;background:#e02028;margin:0 auto 20px}
.moments-two h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(40px,5vw,60px);line-height:1.1;margin:0 0 12px}
.moments-two-heading p{font-size:14px;color:#9ca3af;margin:0;line-height:1.7}
.moments-carousel{max-width:1180px;margin:0 auto;--card-width:490px;--card-height:400px;--card-step:100px}
.moments-stack{height:calc(var(--card-height) + 36px);position:relative;perspective:1400px;touch-action:pan-y}
.moments-stack-card{position:absolute;left:50%;top:18px;width:var(--card-width);height:var(--card-height);margin:0;overflow:hidden;border:6px solid #45474b;border-radius:20px;background:#202124;box-shadow:0 18px 38px #0008;transform:translateX(calc(-50% + var(--offset)*var(--card-step))) scale(calc(1 - var(--distance)*.13));filter:brightness(calc(1 - var(--distance)*.18));transition:transform .55s cubic-bezier(.22,.75,.2,1),filter .4s,border-color .4s;transform-origin:center;will-change:transform}
.moments-stack-card.is-featured{border-color:#e5e5e5;filter:none}
.moments-stack-card img{width:100%;height:100%;object-fit:cover;object-position:var(--position,center);display:block}
.moments-stack-card figcaption{position:absolute;bottom:8px;left:8px;right:8px;padding:16px 18px 14px;border-radius:10px;background:linear-gradient(0deg,#000f,#0009);color:#fff}
.moments-stack-card figcaption>span{font-size:10px;letter-spacing:.12em;color:#d1d5db}
.moments-stack-card h3{font-family:'Poppins',sans-serif;font-size:24px;font-weight:600;line-height:1.3;letter-spacing:-.025em;margin:5px 0 0}
.moments-stack-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:20px}
.moments-stack-controls button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:108px;min-height:44px;border-radius:6px;padding:10px 20px;background:#4b4d52;font-size:14px;font-weight:500;color:white;transition:background .2s}
.moments-stack-controls button[data-stack-next]{background:#e02028}
.moments-stack-controls button:hover{background:#62646a}
.moments-stack-controls button[data-stack-next]:hover{background:#bc1920}
.moments-stack-count{font-size:12px;letter-spacing:.08em;color:#9ca3af;min-width:54px;text-align:center}
@media(max-width:767px){.moments-two{padding:64px 16px 56px}.moments-two-heading p{font-size:12px}.moments-carousel{--card-width:min(77vw,400px);--card-height:360px;--card-step:42px}.moments-stack-card{border-width:4px;border-radius:15px}.moments-stack-card h3{font-size:20px}.moments-stack-card figcaption{padding:12px}.moments-stack-controls{gap:14px}.moments-stack-controls button{min-width:94px}}
@media(prefers-reduced-motion:reduce){.moments-stack-card,.moments-stack-controls button{transition:none}}

/* Scroll-controlled version: keep the stack pinned while photos advance. */
.moments-two{padding:0;overflow:clip}
.moments-two.is-scroll-enabled{height:340svh}
.moments-two-sticky{position:sticky;top:80px;min-height:calc(100svh - 80px);display:flex;flex-direction:column;justify-content:center;padding:32px 20px 28px}
.moments-two-heading{margin-bottom:24px}
.moments-carousel{width:100%;--card-height:clamp(270px,45svh,450px)}
.moments-stack-status{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:18px}
.moments-stack-status p{margin:0;font-size:12px;color:#9ca3af;line-height:1.7}
.moments-two.is-reduced-motion{height:auto}
.moments-two.is-reduced-motion .moments-two-sticky{position:relative;top:0;padding-block:64px}
@media(max-width:767px){.moments-two{padding:0}.moments-two.is-scroll-enabled{height:300svh}.moments-two-sticky{padding:28px 16px}.moments-carousel{--card-height:clamp(260px,44svh,400px)}.moments-stack-status{gap:12px}.moments-stack-status p{font-size:10px}}
@media(prefers-reduced-motion:reduce){.moments-two.is-scroll-enabled{height:auto}.moments-two-sticky{position:relative;top:0}}

/* Fill the viewport while keeping the photo stack and scroll hint visible. */
.moments-two{scroll-margin-top:0}
.moments-two-sticky{top:0;height:100svh;min-height:100svh;padding:96px 24px 24px}
.moments-two-heading{margin-bottom:12px}
.moments-two-heading>span{margin-bottom:12px}
.moments-two h2{font-size:clamp(36px,4.5vw,60px);margin-bottom:6px}
.moments-carousel{max-width:1600px;--card-width:min(68vw,900px);--card-height:max(180px,calc(100svh - 260px));--card-step:clamp(48px,8vw,130px)}
.moments-stack-status{margin-top:10px}
@media(max-width:767px){.moments-two-sticky{padding:88px 12px 20px}.moments-carousel{--card-width:86vw;--card-height:max(180px,calc(100svh - 240px));--card-step:34px}.moments-two-heading p{font-size:11px}.moments-stack-card h3{font-size:20px}}
.moments-two.is-reduced-motion .moments-two-sticky{height:auto;min-height:100svh}
