.occasion-page{background:var(--paper);color:var(--ink)}
.occasion-hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px}
.occasion-copy{padding:clamp(70px,9vw,135px) clamp(28px,8vw,120px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.occasion-copy h1{font-size:clamp(58px,8vw,118px);margin:12px 0 24px;max-width:760px}
.occasion-copy .finish-word{white-space:nowrap}
.occasion-copy .finish-i{display:inline-block;margin-left:.035em}
.occasion-copy>p:not(.section-kicker){max-width:620px;font-size:19px;line-height:1.7;color:#54606d}
.occasion-copy .button{margin-top:28px}
.occasion-photo{min-height:560px;overflow:hidden;position:relative;background:var(--blue)}
.occasion-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.occasion-photo::after{content:"";position:absolute;inset:auto 0 0;height:12px;background:linear-gradient(90deg,var(--coral),var(--gold),var(--mint),var(--blue),var(--lilac))}
.occasion-details{padding:90px clamp(24px,8vw,120px);background:#fff}
.occasion-details .section-heading{max-width:1120px;margin:0 auto 45px}
.occasion-details .section-heading h2{font-size:clamp(44px,6vw,78px)}
.occasion-detail-grid{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.occasion-detail{padding:30px;min-height:230px;background:var(--cream);border-top:6px solid var(--gold)}
.occasion-detail:nth-child(2){border-color:var(--coral)}.occasion-detail:nth-child(3){border-color:var(--mint)}
.occasion-detail span{display:block;font:600 42px/1 var(--display);color:var(--coral);margin-bottom:30px}
.occasion-detail h3{font-size:26px;margin-bottom:12px}.occasion-detail p{color:#5a6470;line-height:1.65}
.occasion-ideas{display:grid;grid-template-columns:.9fr 1.1fr;background:var(--cream)}
.occasion-ideas-copy{padding:90px clamp(28px,7vw,100px)}
.occasion-ideas h2{font-size:clamp(44px,6vw,76px);margin-bottom:24px}
.occasion-ideas ul{list-style:none;padding:0;margin:30px 0}.occasion-ideas li{padding:13px 0;border-bottom:1px solid rgba(24,53,74,.17);font-weight:600}
.occasion-ideas-photo{min-height:520px}.occasion-ideas-photo img{width:100%;height:100%;display:block;object-fit:cover}
.occasion-bottom{padding:90px 24px;text-align:center;background:var(--coral);color:#fff;border-top:10px solid var(--gold)}
.occasion-bottom h2{font-size:clamp(48px,7vw,88px);color:#fff}.occasion-bottom p{max-width:650px;margin:20px auto 30px;font-size:18px}
@media(max-width:900px){.occasion-hero,.occasion-ideas{grid-template-columns:1fr}.occasion-photo{min-height:460px}.occasion-detail-grid{grid-template-columns:1fr}.occasion-detail{min-height:auto}.occasion-ideas-photo{min-height:420px}}
@media(max-width:650px){.occasion-copy{padding:70px 22px}.occasion-photo{min-height:360px}.occasion-details,.occasion-ideas-copy{padding:65px 22px}.occasion-bottom{padding:70px 22px}}
