/* Shared reading surface; illustration and motion remain outside the text. */
.cover .cover-content{background:color-mix(in srgb,var(--paper) 94%,transparent);border-radius:180px 180px 12px 12px;max-width:480px;margin:54px auto 24px;color:var(--color)}
.theme-midnight .cover .cover-content{background:#142538ed;color:#f2e2bb}
.invitation-overture .overture-copy{background:color-mix(in srgb,var(--paper) 95%,transparent);color:var(--color);border-radius:12px;padding:32px 22px 65px;margin-inline:auto;max-width:460px}
.theme-midnight .invitation-overture .overture-copy{background:#142538ed;color:#f2e2bb}
.overture-portrait .overture-copy h2{position:static;margin:32px auto 24px;color:inherit;text-shadow:none;letter-spacing:-1px;font:clamp(38px,8vw,54px)/1.2 'Cormorant Garamond',serif;text-align:center}
.overture-copy h2,.cover h1,.couple-profiles h3,.closing h3{overflow-wrap:anywhere;max-width:100%;height:auto}
.couple-profiles h3{line-height:1.45;padding:4px 8px 10px}
.couple-profiles p{font-size:14px;line-height:1.8}
.couple-profiles .kicker{font-size:10px;letter-spacing:2px}
.profile-initial{opacity:.8}
.event-block{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}
.event-block h3{min-height:2.6em;display:flex;align-items:center;justify-content:center;margin:0}
.event-block h4{font-size:18px;line-height:1.6;overflow-wrap:anywhere;margin:12px 0}
.event-block p{margin:0;font-size:14px;line-height:1.8}
.event-block .invite-button{margin-top:auto;flex-shrink:0}
.theme-ivory .event-block{display:flex;text-align:center;padding:32px 20px}
.kicker,.overture-date,.cover-date{overflow-wrap:anywhere;line-height:1.8}
.inv-nav{color:var(--color)}
@media(max-width:600px){
 .cover{height:auto;min-height:100svh;max-height:none}
 .cover .cover-content,.tier-premium .cover .cover-content{width:calc(100% - 40px);padding:42px 16px 48px;margin:70px auto 28px}
 .cover h1,.tier-premium .cover h1{font-size:clamp(36px,10vw,48px);line-height:1.3}
 .invitation-overture{padding:70px 24px 85px}
 .invitation-overture .overture-copy{padding:30px 18px 55px}
 .overture-copy h2{font-size:clamp(38px,11vw,50px);line-height:1.3}
 .invitation-overture .kicker{letter-spacing:1.8px}
 .opening .chapter-heading,.theme-portrait .chapter-heading{align-items:center;text-align:center}
 .opening .couple-profiles{display:flex;flex-direction:column;gap:20px;text-align:center}
 .opening .couple-profiles article{width:100%;max-width:320px;padding:30px 18px;text-align:center}
 .opening .couple-profiles .profile-photo{max-width:210px;margin:0 auto 24px}
 .opening .couple-profiles .profile-initial{font-size:34px;margin:16px auto;line-height:1.2;text-align:center}
 .opening .couple-profiles h3{font-size:clamp(30px,9vw,38px);margin:12px auto 18px;text-align:center}
 .opening .couple-profiles p{margin:0 auto 12px;text-align:center}
 .opening .couple-profiles .profile-rule{margin:12px auto 20px}
 .opening .couple-profiles .profile-amp{display:block;margin:8px auto;text-align:center;font-size:40px}
 .events .event-cards{grid-template-columns:1fr;max-width:320px;gap:24px}
 .event-block h3{min-height:0;font-size:26px}
 .countdown{gap:8px;flex-wrap:wrap}
 .countdown>span{min-width:58px}
 .rsvp{padding-inline:24px}
}

.design-lumiere .inv-section .premium-separated-art{display:none}

.theme-midnight .rsvp .rsvp-note{background:#dce3ed;color:#24364d;border:1px solid #aab8ca;opacity:1;font-size:13px;line-height:1.7}


.inv-nav{max-width:calc(100vw - 24px);gap:2px;overflow-x:auto;scrollbar-width:none}.inv-nav a{white-space:nowrap;padding:10px 9px;font-size:11px}.inv-nav::-webkit-scrollbar{display:none}


/* Compact gift section across every theme, with comfortable copy controls. */
.inv-section.gift{padding:48px 24px 85px}
.gift>h2{font-size:34px;line-height:1.2;margin-bottom:14px}
.gift>p{font-size:13px;line-height:1.7;max-width:340px;margin:0 auto 18px}
.gift .gift-info{padding:16px 18px;margin:12px auto;max-width:360px;border-radius:14px}
.gift .gift-info strong{font-size:14px;line-height:1.5}
.gift .gift-info p{font-size:12px;line-height:1.6;margin:7px 0;overflow-wrap:anywhere}
.gift .gift-info .gift-account-number{font-size:20px;line-height:1.4;letter-spacing:1px;margin:8px 0}
.gift .gift-info .kicker{font-size:9px;letter-spacing:1.5px;margin-bottom:8px}
.gift .gift-info .invite-button{font-size:11px;min-height:44px;padding:9px 14px;gap:7px;margin-top:6px}
.gift .demo-gift-note{font-size:11px;padding:10px 12px;line-height:1.6;margin-bottom:14px}
