/* Dinner invitation: a single monogram, spacious type and a shorter reading. */
.dinner-invitation .initials-row{display:flex;justify-content:center;width:auto;margin:6px auto 0}
.dinner-seal{position:relative;display:grid;place-items:center;width:clamp(126px,33vw,172px);height:clamp(126px,33vw,172px);border:1px solid #e5c789;border-radius:50%;padding:0;background:radial-gradient(circle at 35% 25%,#e4c17d24,#122b41ba 68%);box-shadow:0 0 0 5px #e5c7890e,0 0 0 6px #e5c78955,inset 0 0 30px #dbb46414,0 12px 30px #06132255;color:#f0d398;transition:transform .3s,box-shadow .3s}
.dinner-seal:before,.dinner-seal:after{content:'';position:absolute;left:50%;width:7px;height:7px;background:#e7ca8e;transform:translateX(-50%) rotate(45deg)}
.dinner-seal:before{top:-4px}.dinner-seal:after{bottom:-4px}
.dinner-seal span{font:400 clamp(84px,23vw,120px)/1 Love,cursive;transform:translate(-.045em,.04em);text-shadow:0 2px 12px #c3964738}
.dinner-seal:hover{transform:scale(1.025);box-shadow:0 0 0 6px #e5c78920,0 0 24px #e5c78930}
.dinner-invitation .cover-eyebrow{font:25px/1.4 Editorial,serif;letter-spacing:.03em;margin:0 auto 24px;color:#f1deba}
.dinner-invitation .cover-couple{font:64px/1.3 Love,cursive;margin:18px auto 3px;color:#f5deb0}
.dinner-invitation .cover-date-jewel{margin-top:18px}
.dinner-invitation .cover-open-languages{margin-top:17px}
.dinner-invitation .opening-progress{margin-top:18px}
.dinner-invitation .invitation-intro{padding-top:125px;padding-bottom:34px}
.dinner-invitation .invitation-intro .overline{font:29px/1.35 Editorial,serif;letter-spacing:0;text-transform:none;text-wrap:balance;margin:0 auto 33px;max-width:440px}
.dinner-invitation .invitation-intro .family{font-size:29px;line-height:1.4;margin:0 auto 18px;text-wrap:balance}
.dinner-invitation .invitation-copy{max-width:420px;margin:0 auto;font-size:24px;line-height:1.6;text-wrap:balance}
html[lang] .dinner-invitation .invitation-intro #names{font-size:clamp(78px,22vw,116px);margin:40px auto 30px;gap:0;color:#f3dcae}
.dinner-after:empty{display:none}
.dinner-after{font:26px/1.6 Amiri,serif;color:#ecdfc4;margin:20px auto 0}
.dinner-invitation footer h2{font:32px/1.45 Editorial,serif;max-width:440px;margin:auto;white-space:pre-line;color:#f1ddb5}
html[lang=ar] .dinner-invitation .cover-eyebrow{font:32px/1.5 Amiri,serif;letter-spacing:0}
html[lang=ar] .dinner-invitation .cover-couple{font:64px/1.5 Ruqaa,Amiri,serif;margin-top:8px}
html[lang=ar] .dinner-invitation .invitation-intro .overline{font:35px/1.6 Ruqaa,Amiri,serif;margin-bottom:28px}
html[lang=ar] .dinner-invitation .invitation-copy{font:27px/1.7 Amiri,serif}
html[lang=ar] .dinner-invitation .invitation-intro #names{font-size:clamp(124px,36vw,172px);margin:30px auto}
html[lang=ar] .dinner-invitation footer h2{font:31px/1.8 Amiri,serif}
@media(max-height:740px){.dinner-seal{width:112px;height:112px}.dinner-seal span{font-size:82px}.dinner-invitation .cover-eyebrow{margin-bottom:14px;font-size:23px}.dinner-invitation .cover-couple{font-size:53px;margin-top:11px}.dinner-invitation .cover-open-languages{margin-top:10px}.dinner-invitation .cover-date-jewel{margin-top:13px;padding-block:10px}.dinner-invitation .opening-progress{margin-top:13px}.dinner-invitation .jewel-day{font-size:40px}html[lang=ar] .dinner-invitation .cover-eyebrow{font-size:28px}html[lang=ar] .dinner-invitation .cover-couple{font-size:53px}}
@media(max-width:360px){.dinner-invitation .entrance-words{padding-inline:9%}.dinner-invitation .invitation-copy{font-size:22px}.dinner-invitation .invitation-intro .family{font-size:27px}.dinner-invitation .invitation-intro .overline{font-size:26px}.dinner-invitation .cover-open-languages{gap:10px}}

/* Bilingual venue notice before the closing message. */
.dinner-invitation .adults-note h2{font:400 clamp(30px,7.5vw,40px)/1.3 Editorial,serif;text-wrap:balance}
.dinner-invitation .adults-note p{max-width:32ch;margin-inline:auto;font-size:clamp(19px,4.8vw,23px);line-height:1.7;text-wrap:pretty}
html[lang=ar] .dinner-invitation .adults-note h2{font-family:Amiri,serif;line-height:1.65}
html[lang=ar] .dinner-invitation .adults-note p{font-family:Amiri,serif;font-size:clamp(23px,5.7vw,28px);line-height:1.9;letter-spacing:0}

/* Latin name and W harmonized with the Arabic Aref Ruqaa lettering. */
.dinner-invitation .dinner-seal span{font-family:Ruqaa,Amiri,serif;font-size:clamp(74px,20vw,108px);line-height:1;transform:translateY(-.015em)}
html[lang] .dinner-invitation .cover-couple{font-family:Ruqaa,Amiri,serif;line-height:1.35}
.dinner-cover-latin,.dinner-name-latin{display:none;font-family:Ruqaa,Amiri,serif;color:#f3dcae;letter-spacing:0}
html[lang=ar] .dinner-cover-latin{display:block;font-size:32px;line-height:1.2;margin:-2px auto 5px}
html[lang=ar] .dinner-name-latin{display:block;font-size:clamp(39px,11vw,55px);line-height:1.3;margin:-12px auto 22px}
@media(max-height:740px){.dinner-invitation .dinner-seal span{font-size:72px}html[lang=ar] .dinner-cover-latin{font-size:25px;margin-top:-4px}html[lang=ar] .dinner-invitation .cover-couple{font-size:47px;line-height:1.2;margin-top:9px}}

/* Clear Arabic lettering directly on the illustrated cover, without a panel. */
html[lang=ar] .dinner-invitation .cover-eyebrow{font:400 clamp(32px,8.5vw,38px)/1.65 Kufi,Arial,sans-serif;color:#fff4d8;letter-spacing:0;word-spacing:0;white-space:nowrap;flex-shrink:0;max-width:100%;margin:0 auto 18px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;text-shadow:0 2px 4px #061421,0 0 12px #061421}
@media(max-height:740px){html[lang=ar] .dinner-invitation .cover-eyebrow{font-size:32px;margin-bottom:14px;padding:0}}
