/* Client content only. Original Ivory Burgundy palette, art and animation rules are unchanged. */
@font-face{font-family:Amiri;src:url('assets/amiri-regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
.bismillah,.client-dua{font-family:Amiri,'Noto Naskh Arabic',serif}
.guest-message{white-space:pre-line}
body[data-theme="ivory-burgundy"] .date-text{font-weight:600}
body[data-theme="ivory-burgundy"] .ivory-scroll-cue{border:0;background:none;cursor:pointer}
.event-schedule{list-style:none;padding:0;margin:12px auto;width:100%;max-width:320px}
.event-schedule li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:5px 0;border-bottom:1px solid #a8875a33;font-size:19px;line-height:1.3;text-align:left}
.event-schedule li:last-child{border-bottom:0}
.event-schedule time{white-space:nowrap;text-align:right;font-size:16px;color:var(--accent)}
.rsvp-box{padding:20px 14px;border:1px solid #a8875a66;border-radius:10px;background:linear-gradient(#f7f1e5e8,#f7f1e5e8),url('assets/ivory-texture.webp') center/cover;max-height:calc(100dvh - 225px);overflow-y:auto;overscroll-behavior:contain}
.rsvp-note{font-size:18px;line-height:1.3;margin:10px auto 16px}
.rsvp-row{display:grid;grid-template-columns:minmax(0,1fr) 108px 30px;align-items:center;gap:7px;padding:9px 0;border-top:1px solid #a8875a44;text-align:left}
.rsvp-name{font-size:18px;line-height:1.2;font-weight:600;display:block}
.rsvp-relation{display:block;font-size:12px}.rsvp-relation:empty{display:none}
.rsvp-copy{position:relative;border:1px solid #a8875a88;border-radius:6px;background:none;min-height:42px;padding:6px 3px;color:var(--accent);cursor:pointer}
.rsvp-number{font:15px/1.3 var(--body);user-select:all;-webkit-user-select:all}
.rsvp-copy-status{position:absolute;left:0;right:0;bottom:-11px;text-align:center;font:10px Arial;color:var(--accent);background:var(--background)}
.rsvp-copy-status:empty{display:none}.rsvp-call{width:30px;height:30px;border:1px solid #a8875a88;border-radius:50%;display:grid;place-items:center;color:var(--accent)}
.rsvp-call svg{width:14px;height:14px}
body[data-theme="ivory-burgundy"] .rsvp.ivory-scene .scene-scroll{padding-top:150px}
body[data-theme="ivory-burgundy"] .client-closing.ivory-scene .scene-scroll{padding-top:145px}
body[data-theme="ivory-burgundy"] .client-closing .scene-title{font-size:38px;margin:7px auto}
.client-dua{font-size:25px;line-height:1.8;color:var(--accent)}
body[data-theme="ivory-burgundy"] .client-closing .closing-dua{font-size:17px;line-height:1.3}
body[data-theme="ivory-burgundy"] .client-closing .timeline{margin:10px 0;list-style:none;padding:0}
body[data-theme="ivory-burgundy"] .client-closing .timeline li{padding:0;border-bottom:1px solid #a8875a33}
body[data-theme="ivory-burgundy"] .client-closing .timeline-link{display:grid;grid-template-columns:1fr auto;width:100%;gap:2px 10px;padding:7px 0;text-align:left}
body[data-theme="ivory-burgundy"] .client-closing .timeline-title{grid-row:1/3;font-size:21px;align-self:center}
body[data-theme="ivory-burgundy"] .client-closing .timeline-meta{font-size:13px;text-align:right}
body[data-theme="ivory-burgundy"] .client-closing .timeline-time{font-size:13px;text-align:right}
body[data-theme="ivory-burgundy"] .client-closing .countdown{margin:0 auto}
body[data-theme="ivory-burgundy"] .client-closing .countdown-label{font-size:15px;margin:5px auto}
body[data-theme="ivory-burgundy"] .client-closing .countdown strong{font-size:28px}
body[data-theme="ivory-burgundy"] .client-closing .closing-thanks{font-size:17px;line-height:1.3;margin:10px auto}
.client-signature{width:150px;margin:4px auto 0;text-align:left;font:28px/1.05 var(--display);color:var(--accent)}
.client-signature span{display:block}.client-signature span:nth-child(2){margin-left:27%}.client-signature span:nth-child(3){margin-left:54%}
@media(max-height:700px){body[data-theme="ivory-burgundy"] .client-closing.ivory-scene .scene-scroll{padding-top:85px}.client-closing .client-dua{font-size:22px}body[data-theme="ivory-burgundy"] .client-closing .scene-title{font-size:31px}.client-signature{font-size:24px}.rsvp-row{padding:7px 0}.rsvp-box{padding:14px 10px}.rsvp-name{font-size:17px}.event-schedule li{font-size:17px;padding:3px 0}.event-schedule time{font-size:14px}}

/* Refinement: small navigation arrows and a separate footer prevent text overlap. */
body[data-theme="ivory-burgundy"] .invitation.is-navigating{scroll-snap-type:none}
body[data-theme="ivory-burgundy"] .scene.ivory-scene .scene-scroll{height:calc(100% - 70px - env(safe-area-inset-bottom,0px));padding-bottom:14px;overscroll-behavior-y:auto;-webkit-overflow-scrolling:touch}
body[data-theme="ivory-burgundy"] .scene .next-scene,
body[data-theme="ivory-burgundy"] .couple .ivory-scroll-cue{left:calc(50% - 22px);bottom:max(14px,calc(env(safe-area-inset-bottom,0px) + 10px));transform:none;width:44px;height:44px;min-height:44px;padding:11px;display:grid;place-items:center;border:1px solid #a8875a55;border-radius:50%;background:#f7f1e5e8;pointer-events:auto;letter-spacing:0;gap:0}
body[data-theme="ivory-burgundy"] .couple > .next-scene{display:none}
body[data-theme="ivory-burgundy"] .scene .next-scene svg,
body[data-theme="ivory-burgundy"] .couple .ivory-scroll-cue svg{width:20px;height:20px;fill:none;stroke:var(--accent);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;animation:ivory-cue 2.4s ease-in-out infinite}
/* Declare every grid position; older timeline rules must not auto-place the title. */
body[data-theme="ivory-burgundy"] .client-closing .timeline-title{grid-column:1;grid-row:1/3;text-align:left}
body[data-theme="ivory-burgundy"] .client-closing .timeline-meta{grid-column:2;grid-row:1;text-align:right;line-height:1.3}
body[data-theme="ivory-burgundy"] .client-closing .timeline-time{grid-column:2;grid-row:2;text-align:right;line-height:1.3}
body[data-theme="ivory-burgundy"] .client-closing .timeline-link{grid-template-columns:minmax(0,1fr) auto;align-items:center}
body[data-theme="ivory-burgundy"] .client-closing .scene-content{margin:0 auto}
body[data-theme="ivory-burgundy"] .client-closing .client-signature{margin-bottom:12px}
/* Keep the floral illustration close to the welcome copy. */
body[data-theme="ivory-burgundy"] .welcome.ivory-scene .scene-scroll{padding-top:clamp(170px,28dvh,245px)}
body[data-theme="ivory-burgundy"] .welcome.ivory-scene .scene-content{margin:0 auto}
body[data-theme="ivory-burgundy"] .welcome.ivory-scene .guest-message{max-width:30ch;font-size:clamp(19px,5.3vw,22px);line-height:1.4;margin:12px auto}
body[data-theme="ivory-burgundy"] .event.ivory-scene .event-address:empty{display:none}
body[data-theme="ivory-burgundy"] .event.ivory-scene .event-panel{align-items:stretch;text-align:center}
body[data-theme="ivory-burgundy"] .event.ivory-scene .event-actions{margin-top:16px}
/* RSVP uses a curved floral arch; only the individual phone controls are outlined. */
body[data-theme="ivory-burgundy"] .rsvp.ivory-scene .scene-art{border-radius:50% 50% 0 0 / 25% 25% 0 0}
body[data-theme="ivory-burgundy"] .rsvp.ivory-scene .scene-art img{object-position:50% 0}
body[data-theme="ivory-burgundy"] .rsvp.ivory-scene .rsvp-box{border:0;border-radius:0;background:none;box-shadow:none;padding:0;max-height:none;overflow:visible}
body[data-theme="ivory-burgundy"] .rsvp.ivory-scene .scene-scroll{padding-top:clamp(135px,22dvh,185px)}
body[data-theme="ivory-burgundy"] .rsvp.ivory-scene .scene-content{margin:0 auto}
@media(max-height:700px){body[data-theme="ivory-burgundy"] .welcome.ivory-scene .scene-scroll{padding-top:155px}body[data-theme="ivory-burgundy"] .welcome.ivory-scene .guest-greeting{font-size:27px;margin-bottom:7px}body[data-theme="ivory-burgundy"] .welcome.ivory-scene .scene-title{font-size:31px;line-height:1.15}body[data-theme="ivory-burgundy"] .welcome.ivory-scene .guest-message{font-size:18px;line-height:1.3}body[data-theme="ivory-burgundy"] .client-closing.ivory-scene .scene-scroll{padding-top:78px}body[data-theme="ivory-burgundy"] .client-closing .timeline-link{padding:5px 0}body[data-theme="ivory-burgundy"] .client-closing .closing-thanks{font-size:16px}}
@media(prefers-reduced-motion:reduce){body[data-theme="ivory-burgundy"] .scene .next-scene svg,body[data-theme="ivory-burgundy"] .couple .ivory-scroll-cue svg{animation:none!important}}
body.is-hidden .next-scene svg,body.is-hidden .ivory-scroll-cue svg{animation-play-state:paused!important}

/* Screen-fit content spacing. Keep the original artwork and reveal animations. */
body[data-theme="ivory-burgundy"] .scene.ivory-scene .scene-scroll{height:calc(100% - 64px - env(safe-area-inset-bottom,0px));padding-bottom:10px}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .scene-scroll{justify-content:flex-start;overflow-y:auto;padding-top:calc(var(--client-art-space,clamp(128px,22dvh,190px)) + 14px)}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .scene-content,
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-panel{margin:0 auto;min-height:100%;display:flex;flex-direction:column;justify-content:flex-start;flex:0 0 auto}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .ivory-event-icon{width:29px;height:29px;margin:4px auto 8px}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .ivory-event-icon svg{width:18px;height:18px}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .scene-title{font-size:clamp(42px,6.7dvh,56px);line-height:1.1;margin:4px 0}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .vine-motif{height:16px;margin:5px auto 7px}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-date{font-size:clamp(20px,3.2dvh,24px);line-height:1.25;margin:6px 0}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-schedule{margin:auto auto 0;padding-top:6px;width:100%;max-width:340px}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-schedule li{font-size:18px;line-height:1.25;padding:4px 0}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-schedule time{font-size:15px}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .rule{display:none}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-venue{font-size:clamp(20px,3.2dvh,24px);line-height:1.2;margin:auto auto 0;padding-top:8px;max-width:30ch}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%;max-width:none;margin:auto auto 0;padding-top:10px}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-actions .action{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;max-width:none;height:46px;min-height:46px;margin:0;padding:0 8px;font:11px/1.2 Arial,sans-serif;letter-spacing:.055em;white-space:nowrap}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-actions .action svg{width:15px;height:15px;flex:none}
/* A centred summary: event on the left, date on the right. */
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .scene-scroll{padding-top:var(--client-art-space,clamp(82px,17dvh,140px))}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .scene-content{margin:0 auto}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .client-dua{font-size:clamp(22px,3.6dvh,28px);line-height:1.5;margin:0}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .closing-dua{font-size:15px;line-height:1.2;margin:3px 0 5px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .scene-title{font-size:clamp(34px,5.5dvh,44px);line-height:1.1;margin:5px 0 8px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .vine-motif{display:none}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline{margin:4px auto 8px;padding:0;border:0;width:100%;max-width:none;align-self:center}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline li{margin:0;padding:0;border:0;border-bottom:1px solid #a8875a40}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline li::before{display:none}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline-link{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:7px 0;align-items:center;width:100%;max-width:none}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline-title{grid-column:1;grid-row:1;justify-self:start;text-align:left;font-size:21px;line-height:1.1}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline-meta{grid-column:2;grid-row:1;justify-self:end;text-align:right;font:16px/1.2 var(--body);margin:0;color:var(--ink);white-space:nowrap}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .countdown-label{font-size:14px;line-height:1.2;margin:4px 0 6px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .countdown{gap:8px;margin:0}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .countdown div{padding-top:5px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .countdown strong{font-size:27px;line-height:1.1}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .countdown span{font-size:8px;line-height:1.2;margin-top:3px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .closing-thanks{font-size:16px;line-height:1.25;margin:10px auto 7px;max-width:38ch}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .client-signature{font-size:clamp(29px,4.5dvh,37px);line-height:1.04;margin:7px auto 6px;width:6em;max-width:100%}
body[data-theme="ivory-burgundy"] .scene.client-closing .next-scene{left:auto;right:max(23px,env(safe-area-inset-right,0px))}
.platform-credit{position:absolute;left:50%;right:auto;transform:translateX(-50%);bottom:max(22px,calc(env(safe-area-inset-bottom,0px) + 18px));width:max-content;max-width:calc(100% - 152px);min-height:28px;padding:6px 13px;display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid #a8875a66;border-radius:999px;background:#f7f1e5e8;color:var(--accent);font:9px/1.4 Arial,sans-serif;letter-spacing:.04em;z-index:8}
.platform-credit a{color:inherit;text-decoration:none}
/* Six RSVP contacts, with a non-interactive dash for the pending number. */
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .scene-scroll{padding-top:var(--client-art-space,clamp(100px,18dvh,155px))}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .scene-title{font-size:clamp(35px,5.5dvh,43px);line-height:1.1;margin:4px 0}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .vine-motif{height:16px;margin:5px auto 8px}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-note{font-size:17px;line-height:1.25;margin:7px auto 10px}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-row{padding:6px 0;gap:6px;grid-template-columns:minmax(0,1fr) 104px 29px}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-name{font-size:17px;line-height:1.15}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-copy{min-height:38px;padding:5px 2px}
.rsvp-no-phone{display:block;text-align:center;font:15px/1.5 var(--body);color:var(--muted)}
body[data-theme="ivory-burgundy"] .scene.welcome.ivory-scene .scene-scroll{padding-top:var(--client-art-space,clamp(145px,25dvh,220px))}
body[data-theme="ivory-burgundy"] .scene.welcome.ivory-scene .event-chips{margin:12px auto 0}
@media(max-height:700px){
 body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-schedule li{padding:3px 0;font-size:17px}
 body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-schedule time{font-size:14px}
 body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline-link{padding:5px 0}
 body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .closing-thanks{font-size:15px;margin:8px auto 5px}
 body[data-theme="ivory-burgundy"] .scene.welcome.ivory-scene .guest-message{font-size:17px;line-height:1.25;margin:9px auto}
 body[data-theme="ivory-burgundy"] .scene.welcome.ivory-scene .event-chips{margin-top:8px}
}
/* Extra room for large device fonts: tighten space before falling back to accessible scrolling. */
body[data-theme="ivory-burgundy"] .scene[data-fit="compact"] .scene-content{gap:0}
body[data-theme="ivory-burgundy"] .scene[data-fit="compact"] .vine-motif{height:10px;margin:3px auto}
body[data-theme="ivory-burgundy"] .scene.event[data-fit="compact"] .event-venue{font-size:19px;margin:6px auto}
body[data-theme="ivory-burgundy"] .scene.event[data-fit="compact"] .scene-title{font-size:39px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene[data-fit="compact"] .scene-title{font-size:32px;margin:3px 0 6px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene[data-fit="compact"] .client-dua{font-size:22px;line-height:1.4}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene[data-fit="compact"] .timeline-link{min-height:40px;padding:4px 0}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene[data-fit="compact"] .closing-thanks{font-size:15px;line-height:1.2;margin:6px auto 4px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene[data-fit="compact"] .client-signature{font-size:29px;line-height:1;margin:3px auto}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene[data-fit="compact"] .countdown strong{font-size:24px}

/* 19 Oct 2026 fixes: centred closing timer, families heading wrap, guidance label */
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene #countdown-area{width:100%;text-align:center}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .countdown{width:100%;max-width:none;margin:0 auto;text-align:center}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .countdown div{text-align:center}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .countdown-label{margin:4px auto 6px;text-align:center}
.families .scene-title{max-width:100%;text-wrap:balance}
body[data-theme="ivory-burgundy"] .ivory-scene .guidance-label{margin:18px 0 0;font-size:10px;letter-spacing:.17em;color:var(--muted);text-align:center}
body[data-theme="ivory-burgundy"] .ivory-scene .guidance-label+.contacts{margin-top:9px}

/* Existing seal monogram styling. */
body[data-theme="ivory-burgundy"] .monogram{align-items:center;gap:.12em;padding:0 0 .03em;font:400 42px/1.15 var(--display)}
body[data-theme="ivory-burgundy"] .monogram [data-initial]{display:block;line-height:1.15;font-style:normal;letter-spacing:0}
body[data-theme="ivory-burgundy"] .monogram i{font:italic 400 .58em/1 var(--body);padding:0;transform:translateY(.03em)}

/* fixes 5: distribute spare event space only between schedule, venue and actions. */
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .scene-content > *{flex-shrink:0}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-address{margin:4px auto 0}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-number{position:absolute;top:-12px;right:0;margin:0}
@media(max-height:640px){
 body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-actions{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}
 body[data-theme="ivory-burgundy"] .scene.event.ivory-scene .event-actions .action{font-size:10px;letter-spacing:.035em}
}
/* Transparent clip: the source is animated only while Welcome is active. */
.welcome .welcome-dance{width:clamp(132px,40vw,172px);height:clamp(100px,16dvh,144px);margin:10px auto 0;flex:none;position:relative;display:block;padding:0;border:0;background:transparent;color:#5c1220;pointer-events:none}
.welcome-dance img{display:block;width:100%;height:100%;object-fit:contain}
body[data-theme="ivory-burgundy"] .scene.welcome[data-fit="compact"] .welcome-dance{height:54px;margin:4px auto}
/* Refined cover lettering; no transient opening/skip label. */
body[data-theme="ivory-burgundy"] .tap-script{font:italic 500 clamp(27px,7.5vw,32px)/1.35 var(--body);letter-spacing:.025em}
body[data-theme="ivory-burgundy"] .skip-hint{display:none}

/* ===== v11 polish ===== */
/* 1. One dome-shaped artwork on every white page (Families and Closing were square). */
body[data-theme="ivory-burgundy"] .scene.ivory-scene .scene-art{border-radius:50% 50% 0 0 / 24% 24% 0 0}

/* 2. Welcome message: centred, balanced, two clear sentences. */
body[data-theme="ivory-burgundy"] .scene.welcome.ivory-scene .guest-message{
 max-width:27ch;margin:10px auto 4px;text-align:center;text-wrap:balance;
 font:italic 400 clamp(19px,5.2vw,22px)/1.42 var(--body);color:var(--ink);white-space:pre-line}
@media(max-height:700px){body[data-theme="ivory-burgundy"] .scene.welcome.ivory-scene .guest-message{font-size:17px;line-height:1.32;margin:6px auto 2px}}

/* 3. Closing page: calmer hierarchy, one blessing block. */
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .client-dua{font-size:clamp(24px,3.8dvh,30px);line-height:1.4;margin:0}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .closing-dua{font:italic 400 14px/1.2 var(--body);color:var(--muted);margin:2px 0 0}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .scene-title{margin:4px 0 6px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline{margin:2px 0 10px}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline li:last-child{border-bottom:0}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .timeline-link{padding:5px 0}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .countdown{padding:0 4px}
.closing-blessing{margin:clamp(14px,3.4dvh,30px) auto 0;max-width:300px;text-align:center}
.closing-blessing p{margin:0}
.closing-blessing .cb-main{font:400 clamp(18px,4.9vw,20px)/1.38 var(--body);color:var(--ink);text-wrap:balance}
.closing-blessing .cb-orn{display:block;width:46px;height:1px;margin:10px auto;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.55}
.closing-blessing .cb-thanks{font:italic 400 15.5px/1.3 var(--body);color:var(--muted)}
.closing-blessing .cb-families{margin-top:7px;font:400 11px/1.4 var(--labels);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.closing-blessing :is(.cb-main,.cb-thanks,.cb-families):empty{display:none}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .client-signature{
 width:auto;max-width:100%;margin:clamp(12px,2.6dvh,22px) auto 0;font-size:clamp(28px,4.2dvh,34px);line-height:1.1;text-align:center;white-space:nowrap}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .client-signature span{display:inline;margin:0}
body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .client-signature span:nth-child(2){margin:0 .25em;font-size:.62em;color:var(--muted)}
@media(max-height:700px){
 .closing-blessing{margin-top:12px}
 .closing-blessing .cb-main{font-size:16.5px;line-height:1.3}
 .closing-blessing .cb-orn{margin:6px auto}
 .closing-blessing .cb-thanks{font-size:14px}
 .closing-blessing .cb-families{font-size:10px;margin-top:4px}
 body[data-theme="ivory-burgundy"] .scene.client-closing.ivory-scene .client-signature{font-size:25px;margin-top:6px}
}

/* fixes 17: full Orchid venue and address, readable without crowding the actions. */
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene:is([data-event-id="barat"],[data-event-id="valima"]) .event-venue{max-width:100%;font-size:clamp(20px,5.5vw,24px);line-height:1.15;text-wrap:balance}
body[data-theme="ivory-burgundy"] .scene.event.ivory-scene:is([data-event-id="barat"],[data-event-id="valima"]) .event-address{width:100%;max-width:29ch;font-size:clamp(15px,4.2vw,17px);line-height:1.25;margin:4px auto 0;text-wrap:balance}
@media(max-height:640px){
 body[data-theme="ivory-burgundy"] .scene.event.ivory-scene:is([data-event-id="barat"],[data-event-id="valima"]) .event-venue{font-size:20px;line-height:1.12}
 body[data-theme="ivory-burgundy"] .scene.event.ivory-scene:is([data-event-id="barat"],[data-event-id="valima"]) .event-address{font-size:15px;line-height:1.2;margin-top:3px}
}

/* fixes 18: keep the RSVP heading anchored and centre fuller contact rows below it. */
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .scene-content{min-height:calc(100dvh - 84px - env(safe-area-inset-bottom,0px) - var(--client-art-space,clamp(100px,18dvh,155px)));justify-content:flex-start}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-box{width:100%;min-height:inherit;display:flex;flex-direction:column}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-box > *{flex-shrink:0}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-contacts{width:100%;margin:auto 0}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-row{min-height:clamp(50px,7.5dvh,68px);padding:7px 0;gap:7px;grid-template-columns:minmax(0,1fr) 108px 31px}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-name{font-size:clamp(18px,4.9vw,20px);line-height:1.2}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-copy{min-height:42px;padding:6px 3px}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-number{font-size:16px}
body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-call{width:31px;height:31px}
@media(max-height:700px){
 body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-row{min-height:48px;padding:4px 0;gap:6px;grid-template-columns:minmax(0,1fr) 104px 29px}
 body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-name{font-size:17.5px;line-height:1.15}
 body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-copy{min-height:40px}
 body[data-theme="ivory-burgundy"] .scene.rsvp.ivory-scene .rsvp-call{width:29px;height:29px}
}
