/* Wedding launch polish: conversion hierarchy, mobile spacing, accessibility */
.page-wedding .wedding-package-featured{position:relative;z-index:1;background:#fff4f1;box-shadow:0 18px 55px rgba(71,49,53,.12);border-top:4px solid var(--wedding-wine)}
.page-wedding .wedding-package-featured::after{content:"Most popular";position:absolute;right:1rem;top:1rem;color:var(--wedding-wine);font-size:.58rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.page-wedding .wedding-package-featured h3,.page-wedding .wedding-package-featured .wedding-package-price{color:var(--wedding-ink)}
.page-wedding .wedding-package-featured .wedding-package-price{font-size:clamp(2.35rem,3.2vw,3.4rem)}
.page-wedding .wedding-package-featured small,.page-wedding .wedding-package-featured .wedding-package-duration{color:var(--wedding-wine)}
.page-wedding .wedding-package-featured li{color:#62595b;border-color:#e7d9d6}
.page-wedding .wedding-package-featured li::before{background:var(--wedding-rose)}
.page-wedding .wedding-package-featured .wedding-package-link{border-color:var(--wedding-ink);color:var(--wedding-ink)}
.page-wedding .wedding-package-featured .wedding-package-link span{color:var(--wedding-wine)}
.page-wedding .wedding-package-featured .wedding-package-badge{background:#fff;color:var(--wedding-ink);border:1px solid #eadbd8}
.wedding-next-steps{background:var(--wedding-ivory);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.wedding-next-steps .shell-wide{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(2rem,6vw,7rem);align-items:start}
.wedding-next-steps h2{margin:.55rem 0 1rem;font-size:clamp(2.5rem,4vw,4.7rem);line-height:1}
.wedding-next-steps .lead{max-width:48rem;color:#62595b;line-height:1.8}
.wedding-next-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.wedding-next-step{min-height:210px;padding:clamp(1.4rem,2.4vw,2.2rem);background:#fff}
.wedding-next-step span{display:block;margin-bottom:1.4rem;color:var(--wedding-rose);font-family:var(--display);font-size:1.4rem}
.wedding-next-step strong{display:block;margin-bottom:.55rem;color:var(--wedding-ink);font-family:var(--display);font-size:1.55rem;font-weight:400}
.wedding-next-step p{margin:0;color:#62595b;font-size:.86rem;line-height:1.7}
.page-wedding a:focus-visible,.page-wedding button:focus-visible{outline:3px solid var(--wedding-wine);outline-offset:4px}
@media(max-width:980px){.wedding-next-steps .shell-wide{grid-template-columns:1fr}.wedding-next-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-wedding .wedding-package-featured{box-shadow:none}}
@media(max-width:720px){.page-wedding .wedding-hero-copy{padding-top:2.5rem}.page-wedding .wedding-hero-copy h1{max-width:12ch;line-height:.96;text-wrap:balance}.page-wedding .wedding-hero-copy .lead{line-height:1.65}.page-wedding .wedding-proof strong{font-size:1.5rem}.page-wedding .wedding-story-card span{padding:1.4rem}.page-wedding .wedding-package-grid{gap:.8rem;background:transparent;border:0}.page-wedding .wedding-package-card{border:1px solid var(--line);padding:1.45rem}.page-wedding .wedding-package-featured{order:-1}.page-wedding .wedding-package-featured::after{top:.8rem}.wedding-next-step-grid{grid-template-columns:1fr}.wedding-next-step{min-height:0}.page-wedding .wedding-final-shell{gap:1.5rem}.page-wedding .wedding-mobile-cta{padding:.55rem max(.65rem,env(safe-area-inset-right)) calc(.55rem + env(safe-area-inset-bottom)) max(.65rem,env(safe-area-inset-left))}}
