/* Finish: romantic objects and a deliberate transition into contact information.
   Shared header, footer and CTA components are unchanged. */
.date-page .formats>.section-heading{display:grid;grid-template-columns:minmax(0,1fr) 150px auto;gap:28px;align-items:center}
.formats-heart{width:150px;height:135px;object-fit:contain;animation-delay:-2s}
.date-page .full-headphones{width:205px;height:205px;right:-35px;bottom:-50px}
.date-page .occasion-puff{width:225px;height:190px}
.date-page .occasions-heading h2{max-width:72%}
.experience .section-action{display:flex;align-items:center;justify-content:center;gap:34px;min-height:140px}
.experience-puff{width:150px;height:140px;object-fit:contain;animation-delay:-4s}
.date-page .gallery>.section-heading{display:grid;grid-template-columns:minmax(0,1fr) 155px auto;align-items:center;gap:24px}
.gallery-flower{width:155px;height:145px;object-fit:contain;animation-delay:-6s}
.date-page .faq-heading{display:flex;flex-direction:column;align-items:flex-start;gap:34px}
.date-page .faq-loop{width:290px;height:230px;margin:0;object-fit:contain;align-self:center}
.faq-fur{width:195px;height:195px;object-fit:contain;margin:18px 0 0 -55px;animation-delay:-3s}
.date-page main>.final-invite{margin-top:80px;padding:44px 32px 60px;display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:center;gap:38px}
.date-page .final-invite:before{content:'';position:absolute;inset:-30px -35px;z-index:-1;background:radial-gradient(ellipse at 60% 55%,#ffa6db70,transparent 68%);pointer-events:none}
.date-page .final-invite .invite-text{max-width:none}
.date-page .final-invite h2{font-size:clamp(28px,2.7vw,38px);line-height:1.5;max-width:850px}
.date-page .final-invite .invite-fluff{position:static;width:290px;height:290px;object-fit:contain;margin:0;align-self:center}
.date-page .contact-strip.container{margin:0 auto 42px;padding:38px 32px 34px;border-top:1px solid #6b257c33;gap:36px;align-items:start;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto}
.date-page .contact-strip .eyebrow{margin-bottom:12px}
.date-page .contact-phone{align-self:center}
@media(max-width:1100px){
 .date-page .formats>.section-heading{grid-template-columns:minmax(0,1fr) 120px;gap:16px}.formats-heart{width:120px;height:120px}.formats .section-aside{grid-column:1/-1}
 .date-page main>.final-invite{grid-template-columns:minmax(0,1fr) 230px;gap:22px}.date-page .final-invite .invite-fluff{width:230px;height:230px}
 .date-page .contact-strip.container{grid-template-columns:1fr 1fr;row-gap:24px}.date-page .contact-phone{grid-column:1/-1;justify-self:start}
}
@media(max-width:767px){
 .date-page .formats>.section-heading{grid-template-columns:minmax(0,1fr) 90px;gap:12px;margin-bottom:24px}.formats-heart{width:90px;height:100px}.formats .section-aside{display:none}
 .date-page .full-headphones{width:145px;height:145px;bottom:-25px;right:-10px}
 .date-page .occasions-heading{display:grid;grid-template-columns:minmax(0,1fr) 105px;gap:8px;align-items:center;margin-bottom:22px}.date-page .occasions-heading h2{max-width:none;padding:0;font-size:26px}.date-page .occasion-puff{width:105px;height:115px;margin:0}
 .experience .section-action{gap:14px;min-height:100px;justify-content:space-between}.experience-puff{width:95px;height:100px;flex:0 0 95px}.date-page .experience .section-action .buy-ticket{width:auto;flex:1;padding-inline:14px}
 .date-page .gallery>.section-heading{grid-template-columns:minmax(0,1fr) 100px;gap:12px}.gallery-flower{width:100px;height:105px}.gallery .carousel-controls{grid-column:1/-1;justify-self:start}
 .date-page .faq-heading{display:grid;grid-template-columns:minmax(0,1fr) 125px;gap:10px;margin-bottom:22px;align-items:center}.date-page .faq-heading h2{max-width:none;font-size:27px}.date-page .faq-loop{width:125px;height:115px;flex:none;grid-column:2;grid-row:1}.faq-fur{display:none}
 .date-page main>.final-invite{margin-top:50px;padding:20px 22px 38px;grid-template-columns:1fr;gap:20px}.date-page .final-invite h2{font-size:26px}.date-page .final-invite .invite-fluff{grid-row:1;justify-self:end;width:175px;height:155px}.date-page .final-invite .invite-text{grid-row:2}.date-page .invite-text>.buy-ticket{margin:25px 0 0}
 .date-page .contact-strip.container{padding:30px 22px 25px;margin:0 auto 22px;display:grid;grid-template-columns:1fr;gap:25px}.date-page .contact-strip .eyebrow{margin-bottom:8px}.date-page .contact-strip p{font-size:20px}.date-page .contact-phone{font-size:20px;grid-column:auto}
}
@media(max-width:370px){.date-page .occasions-heading h2{font-size:22px}.date-page .final-invite h2{font-size:23px}.date-page .gallery>.section-heading h2{font-size:25px}}
@media(prefers-reduced-motion:reduce){.decor{animation:none!important}}
