.couple-story-section{background:#fcfcf8;color:var(--ink);padding:64px 6%;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.couple-story-inner{max-width:1120px;margin:auto;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:65px;align-items:center}.couple-story-intro .eyebrow{color:var(--muted);margin-bottom:20px}.couple-story-intro h2{font-size:clamp(37px,4.5vw,60px);letter-spacing:-.035em}.couple-story-body{font-size:16px;line-height:1.8;color:var(--muted);max-width:580px;margin-top:25px;overflow-wrap:anywhere}.couple-gallery{min-width:0}.couple-carousel-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;background:#edf0e9;overscroll-behavior-x:contain}.couple-carousel-track::-webkit-scrollbar{display:none}.couple-photo{margin:0;flex:0 0 100%;min-width:0;height:410px;scroll-snap-align:start}.couple-photo a{display:block;width:100%;height:100%}.couple-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.couple-carousel-track:focus-visible{outline:3px solid #9e8566;outline-offset:4px}.couple-carousel-controls{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:12px}.couple-carousel-controls>button{width:44px;height:44px;font:28px Georgia,serif;background:transparent;border:1px solid var(--line)}.couple-carousel-dots{display:flex;gap:0}.couple-carousel-dots button{display:grid;place-items:center;width:28px;height:44px;padding:0;border:0;background:none}.couple-carousel-dots span{width:6px;height:6px;border-radius:50%;background:#bac4b2}.couple-carousel-dots button[aria-current=true] span{background:var(--green);width:8px;height:8px}.couple-carousel-position{font-size:12px;color:var(--muted);width:100%;text-align:center}.couple-photo-credit{text-align:center;font-size:12px;color:var(--muted);margin-top:16px}.couple-photo-credit a{border-bottom:1px solid currentColor;padding-bottom:2px}.couple-photo-credit a:hover{color:var(--accent)}@media(max-width:760px){.couple-story-section{padding:46px 6%}.couple-story-inner{grid-template-columns:1fr;gap:28px}.couple-story-intro h2{font-size:42px}.couple-story-intro .eyebrow{margin-bottom:14px}.couple-story-body{font-size:16px;margin-top:20px}.couple-photo{height:360px}.couple-gallery{width:100%;max-width:550px;margin:auto}}@media(prefers-reduced-motion:reduce){.couple-carousel-track{scroll-behavior:auto}}
