:root{--paper:#FFFEFD;--accent:#BBDDEB;--warm:#E2C68D;--ink:#51313b;--deep:#6b3843;--line:#BBDDEB77;}
.concept-N05 .hero{box-sizing:border-box}
.concept-N05 .hero img{display:block;max-width:100%}

.concept-N05 .hero{position:relative;min-height:100vh;min-height:100svh;background:#eaf4f8;padding:22px 18px 0;overflow:hidden;isolation:isolate}
.concept-N05 .dance-card{position:relative;min-height:calc(100vh - 22px);min-height:calc(100svh - 22px);background:#fffefd;border:1px solid #e2c68d;border-radius:46% 46% 0 0;overflow:hidden;box-shadow:0 12px 35px #5b536014}
.concept-N05 .dance-card:before{content:"";position:absolute;inset:10px 9px 0;border:1px solid #e2c68d80;border-radius:46% 46% 0 0;z-index:5;pointer-events:none}
.concept-N05 .dance-card-top{position:relative;z-index:4;display:flex;flex-direction:column;align-items:center;padding-top:35px}
.concept-N05 .dance-card-flourish{width:58px;height:15px;border-bottom:1px solid #e2c68d;border-radius:50%;margin:13px 0 0}
.concept-N05 .dance-copy{position:relative;z-index:4;text-align:center;padding:15px 22px 0}
.concept-N05 .hero-eyebrow{font:400 12px/1.45 Manrope,sans-serif;margin:0 auto 15px;max-width:26ch;color:#6b3843}
.concept-N05 .couple-names{display:flex;justify-content:center;align-items:baseline;gap:9px;flex-wrap:wrap;font:400 clamp(60px,16vw,96px)/1.1 "Pinyon Script",cursive;letter-spacing:0;margin:0;color:#6b3843}
.concept-N05 .couple-names span{display:inline-block;max-width:100%}.concept-N05 .couple-names i{font:400 .48em "Cormorant Garamond",serif;color:#9d7632}
.concept-N05 .hero-thought{font:400 clamp(24px,6.5vw,36px)/1.17 "Cormorant Garamond",serif;max-width:20ch;margin:19px auto 0;color:#6b3843}
.concept-N05 .hero-date{font:500 12px/1.5 Manrope,sans-serif;margin:18px 0 0;color:#6b3843}
.concept-N05 .dance-fan{position:absolute;inset:42% -1px 0;margin:0;z-index:1;mask-image:linear-gradient(transparent,#000 22%,#000)}
.concept-N05 .dance-fan img{width:100%;height:100%;object-fit:cover;object-position:50% 83%}
.concept-N05 .dance-foot{position:absolute;bottom:0;left:0;right:0;height:18px;background:#bbddeb;z-index:3;border-top:1px solid #e2c68d}
.concept-N05 .invitation-section{border-top:1px solid #e2c68d;border-bottom:1px solid #e2c68d;background:#fffefd;text-align:center}
.concept-N05 .invitation-section h2:before,.concept-N05 .invitation-section h2:after{content:"";width:30px;height:1px;background:#e2c68d;display:block;margin:15px auto}
.concept-N05 .date-section{background:#eff7fa;padding-block:70px}.concept-N05 .date-card{border:1px solid #e2c68d;border-radius:44% 44% 0 0;padding:45px 18px 28px;background:#fffefd}
.concept-N05 .chapter-a{border-block:1px solid #e2c68d70}.concept-N05 .chapter-b{background:#f2f8fa}
.concept-N05 .venue-section{background:#fffefd;border-top:1px solid #e2c68d}
.concept-N05 .program-section{background:#fffefd}.concept-N05 .program-list{display:grid;grid-template-columns:1fr 1fr;gap:0;border-block:1px solid #e2c68d}
.concept-N05 .program-event{padding:24px 12px;border-bottom:1px solid #e2c68d70;min-width:0}.concept-N05 .program-event:nth-child(odd){border-right:1px solid #e2c68d70}
.concept-N05 .rsvp-section{background:#edf5f8;border-top:1px solid #e2c68d}.concept-N05 .rsvp-section form{border:1px solid #e2c68d70;border-radius:65px 65px 0 0;padding:38px 20px 26px;background:#fffefdbb}
.concept-N05 .closing-section{background:#fffefd;border-top:1px solid #e2c68d}
@media(min-width:700px){.concept-N05 .hero{min-height:900px;padding-inline:40px}.concept-N05 .dance-card{min-height:878px}.concept-N05 .dance-card-top{padding-top:50px}.concept-N05 .dance-copy{padding-top:24px}.concept-N05 .hero-eyebrow{font-size:14px}.concept-N05 .hero-date{font-size:14px}}
@media(max-width:370px){.concept-N05 .hero{padding-inline:14px}.concept-N05 .dance-copy{padding-inline:17px}.concept-N05 .couple-names{font-size:60px;gap:6px}.concept-N05 .hero-thought{font-size:24px}.concept-N05 .program-event{padding-inline:8px}}

.concept-N05 .hero figure{pointer-events:none}
.concept-N05 .rsvp-section input,.concept-N05 .rsvp-section select,.concept-N05 .rsvp-section button,.concept-N05 .btn{min-height:44px}
@media(prefers-reduced-motion:reduce){.concept-N05 .hero *{animation:none!important;transition:none!important}}

.concept-N05 .program-event{display:block;min-width:0}.concept-N05 .program-event time{display:block;margin-bottom:10px}.concept-N05 .program-event h3{overflow-wrap:anywhere}
