/* A restrained stationery hierarchy: calligraphy, editorial serif, clear labels. */
:root{--serif:'Cormorant Garamond','Noto Serif Devanagari',Georgia,serif;--sans:'Jost','Noto Serif Devanagari',Arial,sans-serif;--script:'Great Vibes','Cormorant Garamond',cursive}
body{font-kerning:normal}
h1,h2,h3,h4{font-weight:500;letter-spacing:-.025em;text-wrap:balance}
.eyebrow,.scene-invite-label,.entrance-overline{font-family:var(--sans);font-weight:500}
.royal-invitation h1,.immersive-invitation .royal-invitation h1{font-family:var(--script);font-weight:400;font-style:normal;letter-spacing:0;line-height:1.13;font-size:clamp(5.8rem,9vw,9rem)}
.royal-invitation h1 em{font-family:var(--serif);font-style:italic;font-size:.29em;line-height:1;margin:0 0 5px}
.scene-kicker{font-size:1.2rem}
.scene-message{font-family:var(--serif);font-weight:500;font-size:1.18rem;line-height:1.55}
.scene-date{font-family:var(--serif);font-weight:600;font-variant-numeric:lining-nums;letter-spacing:.06em}
.scene-place,.scene-rsvp{font-family:var(--sans);font-weight:500}
.cinematic-entrance .entrance-heading p{font-family:var(--serif);font-style:normal;font-weight:500;font-size:2.8rem;line-height:1.25;letter-spacing:.025em;text-wrap:balance;text-shadow:0 2px 12px #150803}
.cinematic-entrance .entrance-overline{font-size:.63rem;letter-spacing:.19em}
.cinematic-entrance .envelope-dedication{font-family:var(--serif);font-weight:500;font-size:1.6rem;letter-spacing:.02em}
.cinematic-entrance .envelope-date{font-family:var(--sans);font-size:.52rem;letter-spacing:.22em}
.cinematic-entrance .seal .seal-letters{font-family:var(--serif);font-weight:600;letter-spacing:-2px;font-size:30px}
.cinematic-entrance>#open{font-family:var(--serif);font-size:1.2rem;font-weight:600}
.cinematic-entrance .envelope-foot{font-size:1rem;line-height:1.55}
.envelope-card h1{font-family:var(--serif);font-weight:500}
.immersive-invitation .families p:not(.family-label){font-weight:500;line-height:1.6}
.immersive-invitation .royal-arched-card h4{font-weight:500;letter-spacing:-.02em}
.event-time,.deadline{font-variant-numeric:lining-nums;font-weight:500}
.immersive-invitation .footer-names{font-family:var(--script);font-size:4rem;line-height:1.3;letter-spacing:0}
.footer-names i{font-family:var(--serif);}
html[lang='hi-IN']{--serif:'Noto Serif Devanagari','Cormorant Garamond',serif;--sans:'Jost','Noto Serif Devanagari',sans-serif}
html[lang='hi-IN'] .royal-invitation h1,html[lang='hi-IN'] .immersive-invitation .royal-invitation h1{font-family:var(--serif);font-style:normal;font-weight:500;font-size:clamp(3.2rem,7vw,5.5rem);line-height:1.5;letter-spacing:0}
html[lang='hi-IN'] .cinematic-entrance .entrance-heading p{font-family:var(--serif);font-size:2.3rem;line-height:1.6}
html[lang='hi-IN'] .immersive-invitation .footer-names{font-family:var(--serif);font-size:2.8rem;line-height:1.7}
html[lang='hi-IN'] .eyebrow,html[lang='hi-IN'] .scene-invite-label,html[lang='hi-IN'] .entrance-overline{letter-spacing:0;line-height:1.9}
@media(max-width:700px){
 .immersive-invitation .royal-invitation h1{font-size:clamp(3.8rem,16vw,5.4rem);line-height:1.13;margin-bottom:15px}
 .immersive-invitation .scene-kicker{font-size:.95rem;line-height:1.5}
 .immersive-invitation .scene-message{font-size:.99rem;line-height:1.45;margin-bottom:13px}
 .immersive-invitation .scene-date{font-size:1.08rem;letter-spacing:.03em}
 .immersive-invitation .scene-invite-label{font-size:.51rem;letter-spacing:.12em}
 .immersive-invitation .scene-place{font-size:.58rem;letter-spacing:.07em}
 .immersive-invitation .scene-rsvp{font-size:.62rem;line-height:1.5}
 .cinematic-entrance .entrance-heading p{font-size:2rem;line-height:1.3}
 .cinematic-entrance .entrance-overline{font-size:.8rem;letter-spacing:.15em}
 .cinematic-entrance .envelope-dedication{font-size:1.25rem;bottom:28px;text-transform: uppercase;}
 .cinematic-entrance .envelope-date{font-size:.45rem;bottom:13px;letter-spacing:.18em}
 .cinematic-entrance>#open{font-size:1.1rem}
 .cinematic-entrance .envelope-foot{font-size:.9rem}
 .immersive-invitation .footer-names{font-size:3rem}
 html[lang='hi-IN'] .immersive-invitation .royal-invitation h1{font-size:clamp(2.6rem,11vw,3.8rem);line-height:1.45}
 html[lang='hi-IN'] .immersive-invitation .scene-message{font-size:.8rem;line-height:1.8}
 html[lang='hi-IN'] .cinematic-entrance .entrance-heading p{font-size:1.9rem}
 html[lang='hi-IN'] .immersive-invitation .footer-names{font-size:2.2rem}
}
@media(max-width:360px){
 .cinematic-entrance .entrance-heading p{font-size:1.7rem}
 .cinematic-entrance .envelope-dedication{font-size:1.1rem;bottom:25px}
 .cinematic-entrance .envelope-date{font-size:.4rem;bottom:11px}
 .immersive-invitation .scene-message{font-size:.9rem}
 .immersive-invitation .scene-invite-label{font-size:.44rem}
}
@media(max-width:700px){.immersive-invitation .royal-invitation{padding-top:150px}.immersive-invitation .royal-invitation h1{line-height:1.07}}
html[lang='hi-IN'] h2,html[lang='hi-IN'] h3,html[lang='hi-IN'] h4,html[lang='hi-IN'] .scene-kicker{font-style:normal}

/* Clear dates, compact stationery and direct chapter navigation. */
.immersive-invitation .scene-date{display:inline-block;background:linear-gradient(110deg,#fff6dcf5,#efd5a0f5,#fff6dcf5);border-block:1px solid #b08a49;box-shadow:0 3px 15px #59351d18;padding:5px 14px;margin:0 auto 7px;color:#741e33;font-size:1.6rem;font-weight:600;letter-spacing:.025em;line-height:1.4}
.immersive-invitation .day-heading{padding:13px 18px;gap:10px 20px;border:1px solid #bf9859;border-radius:10px 2px;background:linear-gradient(115deg,#641c31,#87344a);box-shadow:inset 0 0 0 3px #f6dda514,0 5px 12px #61331e12;color:#fff5df}
.immersive-invitation .day-heading h3{font-size:1.75rem;font-style:normal;font-weight:600;color:#fff5df;letter-spacing:0}
.immersive-invitation .day-heading .eyebrow{color:#e6c58a}
.immersive-invitation .day-heading>span:last-child{color:#f3dfbb}
.immersive-invitation .event.royal-arched-card,.immersive-invitation .event.royal-arched-card+.event{min-height:276px;padding:96px 22px 46px;justify-content:center}
.immersive-invitation .royal-arched-card .event-number{top:74px;font-size:.55rem}
.immersive-invitation .royal-arched-card .event-motif{font-size:1.8rem;margin:0 0 9px;line-height:1}
.immersive-invitation .royal-arched-card h4{font-size:1.9rem;line-height:1.15;margin:0 0 11px}
.immersive-invitation .royal-arched-card .event-time{font-size:1.3rem;margin:0;font-weight:600}
.immersive-invitation .event-grid{gap:16px;padding-top:16px}
.nav-icon{display:none}
@media(max-width:700px){
 .immersive-invitation .scene-date{font-size:1.3rem;padding:5px 10px;letter-spacing:0;white-space:nowrap}
 .immersive-invitation .day-heading{grid-template-columns:1fr auto;padding:12px 14px;gap:3px 10px}
 .immersive-invitation .day-heading .eyebrow{grid-column:1;grid-row:1;font-size:.57rem;letter-spacing:.15em}
 .immersive-invitation .day-heading h3{grid-column:1;grid-row:2;font-size:1.6rem;line-height:1.25}
 .immersive-invitation .day-heading>span:last-child{grid-column:2;grid-row:1/3;font-size:.68rem;max-width:8ch;text-align:right}
 .immersive-invitation .day-program{margin-bottom:27px}
 .immersive-invitation .event.royal-arched-card,.immersive-invitation .event.royal-arched-card+.event{min-height:264px;max-width:330px;padding:96px 24px 44px}
 .immersive-invitation .royal-arched-card h4{font-size:1.9rem;margin-bottom:8px}
 .immersive-invitation .royal-arched-card .event-motif{font-size:1.75rem;margin-bottom:9px}
 .immersive-invitation .royal-arched-card .event-time{font-size:1.25rem}
 .chapter-nav{position:fixed;z-index:12;top:auto;bottom:max(9px,env(safe-area-inset-bottom));left:50%;right:auto;transform:translateX(-50%);display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;width:calc(100% - 20px);max-width:480px;padding:5px;border-radius:16px 4px 16px 4px;border:1px solid #bc9658;background:linear-gradient(120deg,#fffbf1f5,#f6e9d0f5);box-shadow:0 5px 22px #43261930,inset 0 0 0 3px #fff7e6;backdrop-filter:blur(12px)}
 .chapter-nav a{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;position:relative;min-width:0;width:auto;height:54px;min-height:48px;padding:5px 0;text-decoration:none;color:#73513a;border:1px solid transparent;border-radius:10px 2px 10px 2px;background:none;box-shadow:none;transform:none}
 .chapter-nav a .chapter-index{display:none}
 .chapter-nav a .nav-icon{display:block;width:20px;height:20px;flex-shrink:0}
 .chapter-nav a b{display:block;position:static;transform:none;opacity:1;visibility:visible;background:none;border:0;padding:0;font-family:var(--sans);font-size:.59rem;line-height:1.2;font-weight:500;white-space:nowrap;color:inherit;box-shadow:none}
 .chapter-nav a[aria-current]{background:linear-gradient(135deg,#87374a,#651e32);border-color:#a76a59;color:#fff0ce;box-shadow:inset 0 0 0 2px #dfbb7924}
 .chapter-nav a:before,.chapter-nav a:after{display:none}
 .immersive-invitation .scene-scroll{bottom:95px}
 html[lang='hi-IN'] .chapter-nav a b{font-size:.6rem;line-height:1.4}
 html[lang='hi-IN'] .immersive-invitation .day-heading h3{font-size:1.3rem;line-height:1.6}
 html[lang='hi-IN'] .immersive-invitation .royal-arched-card h4{font-size:1.65rem;line-height:1.6}
}
@media(min-width:480px) and (max-width:700px){.immersive-invitation .event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.immersive-invitation .royal-arched-card h4{font-size:1.7rem}}
@media(max-width:360px){.immersive-invitation .day-heading h3{font-size:1.35rem}.immersive-invitation .day-heading{padding:12px}.chapter-nav a b{font-size:.54rem}.chapter-nav{width:calc(100% - 14px);gap:1px;padding:4px}.immersive-invitation .scene-date{font-size:1.18rem}}
@media print{.chapter-nav{display:none}}

/* The invitation begins at the palace scene without preview chrome. */
.cinematic-entrance{min-height:100svh}
.cinematic-entrance>.language-switch{position:absolute;z-index:6;top:18px;left:20px;margin:0;min-height:44px;padding:8px 14px;color:#f9e6c2;border:1px solid #d4b07870;border-radius:4px;background:#35231de8;font-size:.75rem}
.footer-links .language-switch{font-family:var(--sans);font-size:.8rem}
@media(max-width:700px){.cinematic-entrance{min-height:100svh}.cinematic-entrance>.language-switch{top:10px;left:12px;padding:8px 10px}}

/* The supplied wedding monogram, consistently applied as metallic gold. */
.brand-monogram,.hero-monogram,.venue-monogram,.seal-logo{object-fit:contain}
.cinematic-entrance .seal{background:repeating-conic-gradient(#e6c57b 0deg 5deg,#967037 5deg 10deg)}
.cinematic-entrance .seal:before{background:radial-gradient(ellipse at 30% 20%,#a74a5b,#6c1d35 60%,#421324);border-color:#e7c37c;box-shadow:inset 0 0 0 2px #93662d,inset 0 0 0 4px #e3bd74,inset 0 0 9px #250c18}
.seal-logo{position:relative;width:74%;height:74%;filter:drop-shadow(0 1px 1px #25091666)}
.hero-monogram{display:block;width:86px;height:76px;margin:0 auto 7px;filter:drop-shadow(0 1px 0 #fff4d1)}
.venue-art-label .venue-monogram{display:block;width:min(135px,90%);height:auto;margin:8px auto}
footer .brand-monogram{width:78px;height:78px;margin-bottom:14px}
.cinematic-entrance .envelope-card .brand-monogram{width:48px;height:48px}
@media(max-width:700px){.hero-monogram{width:64px;height:53px;margin-bottom:5px}.venue-art-label .venue-monogram{width:110px}.cinematic-entrance .envelope-card .brand-monogram{width:40px;height:40px}}
/* Accommodation planning replaces event-by-event attendance. */
.stay-form .stay-choice{margin-top:0;border-top:0;padding-top:0}
.stay-form .stay-choice legend{font-size:1.5rem;font-weight:500;line-height:1.45}
.stay-form .stay-choice>.small{margin:9px 0 16px}
.stay-form .attendance-options{display:grid;grid-template-columns:1fr;gap:10px}
.stay-form .choice{align-items:flex-start;padding:13px 14px;line-height:1.5;min-height:50px;border:1px solid #d3bd94;border-radius:8px;background:#fffaf0;font-size:.85rem}
.stay-form .choice input{margin-top:3px}
.stay-form .choice:has(input:checked){border-color:#8b3549;background:#f4e6d4;box-shadow:inset 3px 0 #8b3549}
.stay-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:19px;margin:0 0 23px}
.stay-fields>label{display:grid;gap:8px;min-width:0;text-align:left;font-family:var(--sans);font-size:.84rem;font-weight:500;color:#633a2e}
.stay-fields input{display:block;min-width:0;width:100%;max-width:100%;min-height:49px;padding:11px 12px;border:1px solid #ba9b6c;border-radius:6px;background:#fffcf5;color:#38241f;font-family:var(--sans);font-size:1rem;line-height:1.5;box-sizing:border-box}
.stay-fields input:focus{outline:2px solid #a3753b;outline-offset:2px;border-color:#8b3549}
.stay-fields input[type=datetime-local]{appearance:none;-webkit-appearance:none;text-align:left}
.stay-fields input::-webkit-date-and-time-value{text-align:left}
.field-hint{font-size:.73rem;color:#7b6654;font-weight:400;line-height:1.5}
.stay-dates{border-top:1px solid #d8c19b;padding-top:20px}
.stay-form>.privacy-hint{line-height:1.7}
.stay-form>.button{width:100%;min-height:50px}
.confirmation h3{overflow-wrap:anywhere}
.response-summary strong{overflow-wrap:anywhere}
@media(min-width:1100px){.stay-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.stay-fields>label:last-child:nth-child(odd){grid-column:1/-1}.stay-dates .stay-fields{grid-template-columns:1fr}}
@media(max-width:700px){.immersive-invitation .rsvp-intro h2{margin-bottom:14px}.immersive-invitation .rsvp-intro>p:not(.eyebrow):not(.small){font-size:.97rem;line-height:1.6;margin-bottom:10px}.immersive-invitation .rsvp-intro .deadline{margin-bottom:12px}.immersive-invitation .rsvp-intro .small{margin:8px 0 0}.immersive-invitation .rsvp-intro>.eyebrow{margin-bottom:16px}}
.stay-form .stay-details-fields{margin:0;padding:0;border:0;min-width:0}
.stay-details-fields>.button{width:100%;min-height:50px}
.stay-no-thanks{padding:18px 20px;margin:18px 0 0;border-block:1px solid #d5bc8d;color:#70432e;font-family:var(--serif);font-size:1.2rem;line-height:1.7;text-align:center;background:#f9efdc}

.stay-calendar{margin-top:22px;padding-top:22px;border-top:1px solid #d5bc8d;text-align:center}
.stay-calendar .button{width:100%;min-height:50px;gap:12px}
.stay-calendar .small{font-size:.75rem;line-height:1.6;margin:12px 0 0;color:#765c49}

/* Traditional invitation wording with a readable Hindi hierarchy. */
.blessing-invocation,.blessing-verse{font-family:'Tiro Devanagari Hindi','Noto Serif Devanagari',serif;font-weight:400;letter-spacing:0}
.blessing-invocation{font-size:1.4rem;color:#a57932;margin:0 0 22px}
.blessing-verse{color:#82233b;font-size:1.14rem;line-height:1.9;margin:0 auto 30px;max-width:590px}
.blessing-verse p{margin:0}
.family-section #family-heading{font-family:var(--serif);font-size:2.8rem;font-style:normal;margin:18px auto 28px;color:#851f37}
.blessing-couple{display:grid;grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);align-items:center;max-width:760px;margin:0 auto 30px;gap:12px}
.blessing-relation{font-family:var(--sans);font-size:.7rem;color:#89673b;margin:0 0 8px}
.blessing-person h3{font-family:var(--script);font-size:3.8rem;font-weight:400;font-style:normal;line-height:1.3;margin:0 0 12px;color:#8b2038;letter-spacing:0}
.blessing-parents{font-family:var(--serif);font-size:1.13rem;line-height:1.65;margin:0;color:#654b3a}
.blessing-union{font-family:var(--serif);font-size:1.35rem;font-style:italic;color:#a47a35}
.blessing-invitation{font-family:var(--serif);font-size:1.25rem;line-height:1.8;max-width:650px;margin:0 auto 24px;text-wrap:pretty}
.blessing-hosts{font-family:var(--serif);font-size:1.1rem;color:#8b612e;margin:22px auto 0}
.immersive-invitation .heartfelt-chapter>p:not(.eyebrow){font-family:var(--serif);font-size:1.24rem;line-height:1.85;text-align:center;max-width:48ch}
.heartfelt-ornament{font-family:var(--serif);font-size:2.7rem;color:#b68b47;line-height:1;margin:5px auto 24px}
.heartfelt-signoff span{display:block;font-family:var(--script);font-size:2.8rem;line-height:1.4;color:#8b2038;margin-top:12px}
.heartfelt-signoff i{font-family:var(--serif);font-size:.6em}
.immersive-invitation .royal-arched-card h4{font-size:1.75rem;text-wrap:balance}
.event-subtitle{font-family:var(--sans);font-size:.65rem;line-height:1.5;color:#856442;margin:-4px 0 10px}
html[lang='hi-IN']{--serif:'Tiro Devanagari Hindi','Noto Serif Devanagari',serif;--sans:'Noto Sans Devanagari','Jost',sans-serif}
html[lang='hi-IN'] body{font-family:var(--sans);line-height:1.85}
html[lang='hi-IN'] h1,html[lang='hi-IN'] h2,html[lang='hi-IN'] h3,html[lang='hi-IN'] h4{font-family:var(--serif);font-weight:400;font-style:normal;letter-spacing:0;font-synthesis:none}
html[lang='hi-IN'] .eyebrow{font-family:var(--sans);font-size:.75rem;line-height:1.9;letter-spacing:0}
html[lang='hi-IN'] .blessing-person h3{font-family:var(--serif);font-size:3.3rem;line-height:1.5}
html[lang='hi-IN'] .blessing-parents{font-family:var(--sans);font-size:.92rem;line-height:1.9}
html[lang='hi-IN'] .blessing-relation{font-family:var(--serif);font-size:.95rem}
html[lang='hi-IN'] .blessing-union{font-style:normal}
html[lang='hi-IN'] .blessing-invitation{font-size:1.2rem;line-height:1.95}
html[lang='hi-IN'] .heartfelt-signoff span{font-family:var(--serif);font-size:2.1rem;line-height:1.6}
html[lang='hi-IN'] .choice,html[lang='hi-IN'] .stay-fields>label,html[lang='hi-IN'] .small,html[lang='hi-IN'] .field-hint{font-family:var(--sans);line-height:1.85}
html[lang='hi-IN'] .chapter-nav a b{font-family:var(--sans);font-size:.58rem}
@media(max-width:700px){
 .blessing-couple{grid-template-columns:1fr;gap:18px;margin-bottom:26px}
 .blessing-verse{font-size:1.03rem;line-height:2;margin-bottom:26px}
 .blessing-invocation{font-size:1.2rem}
 .family-section #family-heading{font-size:2.4rem;margin:16px auto 24px}
 .blessing-person h3{font-size:3.3rem;margin-bottom:5px}
 .blessing-parents{font-size:1.06rem;line-height:1.65}
 .blessing-relation{font-size:.67rem}
 .blessing-union{font-size:1.25rem;line-height:1.4}
 .blessing-invitation{font-size:1.15rem;line-height:1.75}
 .blessing-hosts{font-size:1rem;line-height:1.8}
 .immersive-invitation .heartfelt-chapter>p:not(.eyebrow){font-size:1.12rem;line-height:1.85;text-align:center}
 .heartfelt-signoff span{font-size:2.45rem}
 .immersive-invitation .royal-arched-card h4{font-size:1.65rem;line-height:1.25}
 html[lang='hi-IN'] .family-section #family-heading{font-size:2.1rem}
 html[lang='hi-IN'] .blessing-person h3{font-size:2.8rem}
 html[lang='hi-IN'] .blessing-parents{font-size:.9rem}
 html[lang='hi-IN'] .blessing-invitation{font-size:1.07rem;line-height:1.95}
 html[lang='hi-IN'] .immersive-invitation .heartfelt-chapter h2{font-size:2rem;line-height:1.6;max-width:none}
 html[lang='hi-IN'] .immersive-invitation .royal-arched-card h4{font-size:1.4rem;line-height:1.6}
 html[lang='hi-IN'] .immersive-invitation .scene-message{font-family:var(--serif);font-size:.97rem;line-height:1.9}
 html[lang='hi-IN'] .chapter-nav a{gap:5px}
}
@media(max-width:360px){.immersive-invitation .family-section.royal-cartouche{padding-inline:25px}.blessing-verse{font-size:.92rem}.family-section #family-heading{font-size:2.1rem}html[lang='hi-IN'] .chapter-nav a b{font-size:.51rem}}

/* Calligraphic invitation title and the requested Light parents' names. */
.family-section #family-heading{font-family:'Cormorant Garamond',serif;font-size:3.7rem;font-weight:300;font-synthesis:none;line-height:1.3;letter-spacing:0}
.blessing-parents,html[lang='hi-IN'] .blessing-parents{font-family:'Cormorant Garamond','Tiro Devanagari Hindi',serif;font-weight:300;font-synthesis:none;font-size:1.2rem;line-height:1.7}
html[lang='hi-IN'] .family-section #family-heading{font-family:var(--serif);font-size:2.8rem;line-height:1.6}
html[lang='hi-IN'] .blessing-parents{font-size:1.05rem;line-height:1.9}
.music-toggle{position:fixed;top:max(14px,env(safe-area-inset-top));right:16px;z-index:25;display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 13px;border:1px solid #c19a5e;border-radius:24px;background:#fff8e9ed;box-shadow:0 4px 16px #42251e22;color:#78253a;font-family:var(--sans);font-size:.72rem;cursor:pointer;backdrop-filter:blur(8px)}
.music-toggle>span:first-child{font-family:var(--serif);font-size:1.1rem;line-height:1}
.music-toggle[aria-pressed='true']{background:#74243be8;color:#fff0ce}
.music-toggle:focus-visible{outline:2px solid #b5843f;outline-offset:3px}
body:has(.cinematic-entrance) .music-toggle{top:max(18px,env(safe-area-inset-top));right:20px}
@media(max-width:700px){.family-section #family-heading{font-size:2rem}.blessing-parents{font-size:1.18rem}html[lang='hi-IN'] .family-section #family-heading{font-size:2.1rem}.music-toggle{right:12px;font-size:.67rem;padding:8px 12px}}
@media(max-width:360px){.family-section #family-heading{font-size:2.55rem}}
@media print{.music-toggle{display:none}}

/* Vector playback controls, independent of the text font. */
.music-icon{display:block;width:19px;height:19px;flex:none}

/* A complete, balanced desktop invitation within the first viewport. */
@media(min-width:701px){
 .immersive-invitation .palace-stage{height:100svh;min-height:0}
 .immersive-invitation .royal-invitation{width:min(620px,60vw);max-width:620px;padding:clamp(34px,7svh,80px) 0 76px}
 .immersive-invitation .scene-kicker{font-size:1.08rem;line-height:1.4;margin:0 0 8px}
 .immersive-invitation .hero-monogram{width:70px;height:62px;margin:0 auto 8px}
 .immersive-invitation .scene-invite-label{font-size:.58rem;letter-spacing:.16em;line-height:1.5;margin:0 0 10px}
 .immersive-invitation .royal-invitation h1{font-size:clamp(4rem,10svh,7rem);line-height:1.03;margin:0 0 14px}
 .immersive-invitation .royal-invitation h1 em{font-size:.26em;line-height:1;margin:0 0 2px}
 .immersive-invitation .scene-message{font-size:1.04rem;line-height:1.5;margin:0 0 12px}
 .immersive-invitation .scene-date{font-size:1.25rem;padding:4px 12px;margin:0 auto 6px}
 .immersive-invitation .scene-place{font-size:.64rem;line-height:1.6;margin:4px 0 8px}
 .immersive-invitation .royal-invitation>.royal-flourish{width:220px;max-width:70%;height:auto;margin:6px auto}
 .immersive-invitation .scene-rsvp{font-size:.7rem;min-height:32px;line-height:1.5}
 .immersive-invitation .scene-scroll{bottom:20px}
 html[lang='hi-IN'] .immersive-invitation .royal-invitation h1{font-size:clamp(2.8rem,7.2svh,4.6rem);line-height:1.3}
 html[lang='hi-IN'] .immersive-invitation .scene-invite-label{font-size:.67rem;letter-spacing:0;line-height:1.8}
 html[lang='hi-IN'] .immersive-invitation .scene-message{line-height:1.8}
}
@media(min-width:701px) and (max-height:680px){
 .immersive-invitation .royal-invitation{padding-top:24px}
 .immersive-invitation .hero-monogram{width:54px;height:48px;margin-bottom:5px}
 .immersive-invitation .royal-invitation h1{font-size:clamp(3.4rem,9svh,4.6rem);margin-bottom:10px}
 .immersive-invitation .scene-message{font-size:.92rem;line-height:1.4;margin-bottom:8px}
 .immersive-invitation .scene-date{font-size:1.1rem}
 .immersive-invitation .royal-invitation>.royal-flourish{width:160px;margin:4px auto}
 .immersive-invitation .scene-kicker{font-size:.98rem;margin-bottom:5px}
 html[lang='hi-IN'] .immersive-invitation .royal-invitation h1{font-size:clamp(2.5rem,6.5svh,3.5rem)}
}

.external-link-icon{display:inline-block;flex:none;width:22px;height:22px;vertical-align:middle}
@media(max-width:700px){body:has(.cinematic-entrance) .music-toggle{top:max(10px,env(safe-area-inset-top));right:12px}}
