.invitation-hosts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;width:100%;max-width:450px;margin:20px auto 2px;direction:rtl;text-shadow:0 1px 14px #fff7e9}
.invitation-family{min-width:0;text-align:center;grid-row:1}.family-groom{grid-column:1}.family-bride{grid-column:2}
.invitation-family>span{display:block;font-size:12px;line-height:1.8;color:var(--inv-accent,#8e674b)}
.invitation-family>strong{display:block;font-family:WisalAmiri,WisalNaskh,serif;font-size:22px;font-weight:400;line-height:1.65;overflow-wrap:anywhere}
.invitation-hero-text{font-family:WisalAmiri,WisalNaskh,serif;font-size:21px;line-height:1.85;white-space:pre-line;text-align:center;max-width:440px;margin:16px auto 8px;overflow-wrap:anywhere;text-shadow:0 1px 12px #fff8ed}
.invitation-hosts[hidden],.invitation-family[hidden],.invitation-hero-text[hidden]{display:none}
.has-invitation-details .cinematic-hero{height:auto;min-height:100svh;max-height:none}
.has-invitation-details:is(:not(.experience-open),.is-opening) .cinematic-hero{height:100svh;min-height:100svh;max-height:100svh}
.has-invitation-details .cinematic-names{position:relative;inset:auto;min-height:100svh;padding:clamp(55px,8svh,90px) 7% 105px}
.has-invitation-details .cinematic-names h1{font-size:clamp(44px,12vw,67px);margin-block:15px 10px;line-height:1.05}
.has-invitation-details .cinematic-names h1 i{font-size:27px;margin-block:3px}
.has-invitation-details .cinematic-kicker{font-size:12px}.has-invitation-details .cinematic-date{font-size:19px}
@media(max-width:540px){.invitation-hosts{gap:17px;margin-top:18px}.invitation-family>span{font-size:11px}.invitation-family>strong{font-size:19px}.invitation-hero-text{font-size:19px;line-height:1.75;margin-bottom:8px}.has-invitation-details .cinematic-location{font-size:12px;margin-top:10px}.has-invitation-details .cinematic-names{padding-top:clamp(45px,7svh,65px)}}
.invitation-embedded .has-invitation-details .cinematic-names h1{font-size:43px}

/* A single reveal after the seal opens; only opacity and translation animate. */
.content-staged [data-scene-names]{opacity:1;transform:none!important;transition:none!important}
.content-staged [data-content-step]{opacity:0;transform:translate3d(0,12px,0);animation:none!important}
.invitation-copy-line{display:block;white-space:normal}
.content-staged.content-revealing [data-content-step]{animation:invitation-line-arrive .6s cubic-bezier(.2,.65,.3,1) var(--content-delay,0ms) both!important}
.content-staged.content-reveal-complete [data-content-step]{opacity:1;transform:none;animation:none!important}
@keyframes invitation-line-arrive{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:reduce){.content-staged [data-content-step],.content-staged.content-revealing [data-content-step]{opacity:1;transform:none;animation:none!important}}

/* Longer family introductions, readable event details and a compact six-part program. */
.invitation-family>strong{font-size:18px;line-height:1.85;color:inherit;letter-spacing:0}
.invitation-theme-rose .invitation-family>strong{color:#62473c}
.cinematic-names .cinematic-date,.cinematic-names .cinematic-location{display:inline-block;color:#4b3228;background:transparent;border:0;border-radius:0;box-shadow:none;padding:6px 14px;text-shadow:none;max-width:95%}
.cinematic-names .cinematic-date{font-size:19px;font-weight:500;letter-spacing:2px;margin-top:12px}
.cinematic-names .cinematic-location{font-size:16px;font-weight:500;line-height:1.75;margin-top:9px}
.timeline-editor-heading{display:flex;justify-content:space-between;align-items:start;gap:15px}.timeline-editor-heading h3{font-size:16px;margin:0 0 8px}.timeline-editor-heading>span{white-space:nowrap;font-size:12px;color:#87684e;border:1px solid #e2d3c0;border-radius:20px;padding:3px 10px}
.timeline-editor-rows{display:grid;gap:12px}.timeline-editor-row{padding:15px;background:#fffdf7;border:1px solid #e6d9c9;border-radius:9px;grid-template-columns:105px minmax(0,1fr);gap:10px 12px}.timeline-row-heading{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:12px}.timeline-row-heading>strong{font-size:12px;color:#80634b;font-weight:500}.timeline-row-heading .text-button{font-size:10px;color:#91665d}.timeline-editor-row label{margin:0!important;min-width:0}.timeline-editor-row input{width:100%;min-width:0;font-size:12px}.timeline-fields>[data-add-timeline]{justify-self:start;margin-top:4px}.invitation-notes-field{margin-top:27px}.optional-dress-editor{border:1px solid #e3d5c5;border-radius:9px;padding:16px;margin-top:22px}.optional-dress-editor summary{cursor:pointer;font-size:13px;color:#775b47}.optional-dress-editor label{margin-top:16px}
.chapter-notes{background:#fbf6ea;color:#604737}.chapter-notes>p,.chapter-dress>p{font-family:WisalNaskh,serif;font-size:20px;line-height:2;white-space:pre-line;overflow-wrap:anywhere}.chapter-notes>h2,.chapter-dress>h2{font-size:34px}.event-timeline li{min-height:90px;padding-bottom:12px}.event-timeline h3{overflow-wrap:anywhere}
.invitation-site .chapter-notes>h2,.invitation-site .chapter-notes>p{color:#604737}
.cover-seal .seal-monogram-ornate{display:block;position:relative;width:78%;height:78%;letter-spacing:0;line-height:1}
.seal-monogram-ornate:before,.seal-monogram-ornate:after{display:none}.seal-calligraphy-ornament{position:absolute;inset:-5%;width:110%;height:110%;color:#f2ce98;opacity:.8;pointer-events:none}
.seal-monogram-ornate .seal-letter{position:absolute;font-size:1.04em;font-family:inherit;font-weight:400;text-shadow:0 1px 1px #4d1f29,0 -1px 0 #fff1c866;line-height:1;letter-spacing:-1px;color:#f8dbaa}
.seal-letter-first{right:19%;top:15%;rotate:-7deg;animation:seal-initial-float 5s ease-in-out infinite alternate}.seal-letter-second{left:17%;bottom:16%;rotate:5deg;animation:seal-initial-float 5s 1s ease-in-out infinite alternate-reverse}
@keyframes seal-initial-float{from{transform:translate3d(0,1.5px,0) rotate(-2deg)}to{transform:translate3d(0,-1.5px,0) rotate(2deg)}}
.experience-open .seal-letter,.cover-thumbnail .seal-letter{animation:none}.cover-thumbnail .seal-monogram-ornate{width:78%;height:78%}
@media(max-width:540px){.invitation-family>strong{font-size:15px;line-height:1.85}.invitation-family>span{font-size:10px}.timeline-editor-row{grid-template-columns:88px minmax(0,1fr);padding:12px;gap:9px}.timeline-editor-row input{font-size:11px}.cinematic-names .cinematic-date{font-size:17px}.cinematic-names .cinematic-location{font-size:15px}.chapter-notes>p,.chapter-dress>p{font-size:18px}}
@media(prefers-reduced-motion:reduce){.seal-letter{animation:none!important}}

.invitation-map-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-family:Wisal,Tahoma,sans-serif;font-size:12px;line-height:1.8;color:inherit;margin:12px auto 0;padding:4px 2px;border-bottom:1px solid #ad8c5c80;text-decoration:none;max-width:100%}
.invitation-map-link svg{width:16px;height:18px;flex-shrink:0}.invitation-map-link:hover{border-color:currentColor}
