.wedding-preview{position:relative;z-index:21;display:flex;justify-content:space-between;align-items:center;gap:15px;background:#eee4d5;color:#51402f;padding:7px 4%;font:10px/1.5 Manrope,sans-serif;letter-spacing:.1em}
.wedding-preview a{color:inherit;font-size:10px;text-decoration:underline;text-underline-offset:3px;letter-spacing:0}

.wedding-refined .wedding-promo-copy>p:not(.eyebrow){max-width:49ch}
.wedding-refined .wedding-flow-grid p{line-height:1.8}
.wedding-refined .wedding-section-head>p:not(.eyebrow){max-width:60ch}
.wedding-refined .wedding-promo-panel,.wedding-refined .wedding-story-card,.wedding-refined .wedding-partner-card{box-shadow:0 14px 38px rgba(88,61,40,.09)}
.wedding-refined .wedding-gallery-hint{font:11px/1.7 Manrope,sans-serif;color:#77634e;letter-spacing:.04em;margin:0 0 15px}
.wedding-refined .wedding-zoom{display:block;position:relative;background:none;padding:0;margin:0;border:0;cursor:zoom-in;min-width:0;overflow:hidden;scroll-snap-align:start}
.wedding-refined .wedding-zoom img{display:block;margin:0;box-shadow:none}
.wedding-refined .wedding-zoom::after{content:'Ingrandisci ↗';position:absolute;right:12px;bottom:12px;padding:7px 10px;background:#f6efe4ed;color:#443626;font:10px/1.4 Manrope,sans-serif;letter-spacing:.03em;opacity:0;transition:opacity .3s}
.wedding-refined .wedding-zoom:focus-visible::after{opacity:1}
.wedding-refined :focus-visible{outline:2px solid #986c3b;outline-offset:4px}
.wedding-refined #wedding-lightbox{width:min(1200px,96vw);max-width:96vw;max-height:94dvh;border:1px solid #b99b7055;padding:18px 24px;background:#121110;color:#f2e9dc;overflow:auto;box-shadow:0 25px 90px #0008}
.wedding-refined #wedding-lightbox::backdrop{background:#070605ed}
.wedding-lightbox-bar,.wedding-lightbox-nav{display:flex;align-items:center;justify-content:space-between;gap:20px}
.wedding-refined #wedding-lightbox button{border:1px solid #b99b7077;color:#eee2d1;background:none;padding:10px 15px;font:12px/1.4 Manrope,sans-serif;cursor:pointer}
.wedding-lightbox-count{font:12px Manrope,sans-serif;color:#c6b499}
.wedding-refined .wedding-lightbox-image{display:block;width:100%;height:min(65dvh,780px);object-fit:contain;margin:18px auto 0;border:0;box-shadow:none}
.wedding-refined .wedding-lightbox-caption{font:12px/1.7 Manrope,sans-serif;color:#c6b499;text-align:center;margin:12px 0 18px}
@media(prefers-reduced-motion:no-preference){
 .wedding-refined .btn{transition:background .3s ease,border-color .3s ease,transform .35s ease}
 .wedding-refined .wedding-story-card,.wedding-refined .wedding-partner-card{transition:transform .65s cubic-bezier(.22,.65,.25,1),border-color .35s ease,box-shadow .65s ease}
 .wedding-refined .wedding-zoom img{transition:transform 1.1s cubic-bezier(.22,.65,.25,1)}
 @media(hover:hover) and (pointer:fine){
  .wedding-refined .wedding-zoom:hover img{transform:scale(1.018)}
  .wedding-refined .wedding-zoom:hover::after{opacity:1}
  .wedding-refined .btn:hover{transform:translateY(-1px)}
 }
}
@media(max-width:980px){.wedding-preview{font-size:8px;padding:6px 3%;min-height:30px}.wedding-preview a{font-size:8px}.wedding-refined #wedding-lightbox{padding:14px}.wedding-refined .wedding-zoom::after{opacity:1;font-size:9px;padding:5px 8px}.wedding-refined .wedding-lightbox-image{height:59dvh}}
@media(prefers-reduced-motion:reduce){.wedding-refined *,.wedding-refined *::before,.wedding-refined *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.wedding-refined .reveal{opacity:1!important;transform:none!important}.wedding-refined .btn:hover,.wedding-refined .wedding-story-card:hover,.wedding-refined .wedding-partner-card:hover{transform:none}}
