/* Standard composition rollout, using the audited Aceh handoff as the reference.
   Scoped to the present Standard collection. Package assignments are unchanged. */
body.standard-cinema{--entrance-duration:6.4s;--entrance-reveal-delay:2.1s;--entrance-chapter-duration:4.3s}
.standard-cinema .entrance-transition{display:none!important}
.standard-cinema .cover.aceh-cover-holding,.standard-cinema .cover.aceh-cover-depart{position:fixed!important;z-index:90;min-height:0!important;margin:0!important;pointer-events:none;box-sizing:border-box}
.standard-cinema .cover.aceh-cover-depart{animation:standard-cover-dissolve 2.4s ease both}
@keyframes standard-cover-dissolve{0%,12%{opacity:1}100%{opacity:0}}
.standard-cinema .invitation-overture{position:relative;min-height:100svh;height:auto!important;display:flex!important;align-items:center;justify-content:center;padding:94px 28px 150px!important;overflow:hidden;isolation:isolate;background:var(--paper)}
.standard-cinema .invitation-overture .overture-copy{position:relative;inset:auto!important;z-index:6;width:100%;max-width:340px;margin:0 auto!important;display:flex;align-items:center;flex-direction:column;justify-content:center;padding:0!important;opacity:1!important;transform:none!important;background:none!important;border:0!important;box-shadow:none!important;min-height:0!important}
.standard-cinema .invitation-overture .overture-copy:before,.standard-cinema .invitation-overture .overture-copy:after{display:none!important}
.standard-cinema .standard-entrance-portrait{width:clamp(160px,51vw,215px)!important;height:auto!important;aspect-ratio:4/5!important;margin:0 auto 24px!important;flex:none;position:relative;overflow:visible!important;transform:none!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.standard-cinema .standard-entrance-portrait>img:not(.photo-frame-asset){display:block;width:100%!important;height:100%!important;aspect-ratio:4/5;object-fit:cover;object-position:50% 35%;border-radius:48% 48% 4px 4px}
.standard-cinema .invitation-overture .overture-copy h2{font-size:clamp(36px,10vw,49px)!important;line-height:1.15!important;margin:12px 0!important;max-width:100%;overflow-wrap:anywhere;background:none!important;border:0!important;padding:0!important;box-shadow:none!important}
.standard-cinema .invitation-overture .overture-copy h2 i{font-size:.6em}
.standard-cinema .invitation-overture .collection-welcome{font:11px/1.8 Lato,sans-serif;max-width:265px;margin:0 auto 8px}
.standard-cinema .invitation-overture .overture-date{font-size:10px;letter-spacing:1.8px;margin:14px 0}
.standard-cinema .invitation-overture .scroll-invitation{position:relative;inset:auto;margin:20px auto 0}
.standard-cinema .invitation-overture>.theme-scene{opacity:1!important;filter:none!important;background:var(--paper)!important}
.standard-cinema .invitation-overture .collection-backdrop{opacity:.68!important;object-fit:cover!important;transform:none!important;animation:none!important}
.standard-cinema .invitation-overture .theme-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 65%,transparent),color-mix(in srgb,var(--paper) 45%,transparent) 65%,transparent);pointer-events:none;z-index:2}
.standard-cinema .invitation-overture :is(.collection-ornaments,.standard-foreground,.falling-leaves,.grand-bouquet,.upper-floral,.extra-floral){display:none!important}
.standard-scene-depth{display:none;position:absolute;inset:0;z-index:4;pointer-events:none;overflow:hidden}
.standard-cinema .invitation-overture .standard-scene-depth{display:block}
.standard-scene-light{position:absolute;inset:0;background:radial-gradient(ellipse at 30% 10%,#fff7dd33,transparent 65%)}
.standard-depth-arrival{position:absolute;bottom:-35px;left:-45px;width:clamp(120px,37vw,185px);height:250px;transform-origin:30% 100%}
.standard-depth-arrival img{width:100%;height:100%;object-fit:contain;object-position:left bottom;transform-origin:30% 100%;animation:standard-garden-breeze 8s -2s ease-in-out infinite alternate}
.depth-right{left:auto;right:-40px;scale:-1 1;width:clamp(100px,31vw,155px)}
.depth-right img{animation-duration:10s;animation-delay:-5s;animation-direction:alternate-reverse}
.depth-tassel .standard-depth-arrival{bottom:auto;top:-25px;left:-45px;height:240px;width:120px;transform-origin:50% 0}
.depth-tassel .depth-right{left:auto;right:-45px}
.depth-tassel img{object-position:center top;transform-origin:50% 0;animation-name:standard-pendant-breeze}
.depth-star img{animation-name:standard-light-breathe;animation-duration:6s}
.standard-scene-ground{position:absolute;inset:auto 0 0;height:80px;background:linear-gradient(transparent,color-mix(in srgb,var(--paper) 75%,transparent))}
@keyframes standard-garden-breeze{from{rotate:-2deg}to{rotate:2.3deg}}
@keyframes standard-pendant-breeze{from{rotate:-1.7deg}to{rotate:1.7deg}}
@keyframes standard-light-breathe{from{opacity:.55}to{opacity:.95}}
.standard-initial-reveal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;gap:12px;z-index:91;pointer-events:none;font:80px/1 'Great Vibes',cursive;color:var(--color);text-shadow:0 1px 20px var(--paper)}
.standard-initial-reveal em{font:italic 28px 'Cormorant Garamond',serif}
.standard-cinema-started .standard-initial-reveal{display:flex;animation:standard-initial-moment 2.7s both}
@keyframes standard-initial-moment{0%,18%{opacity:0;scale:.95}42%,64%{opacity:1;scale:1}100%{opacity:0;scale:1.04;visibility:hidden}}
.standard-cinema-started .invitation-overture .standard-depth-arrival{animation:standard-depth-rise 2.5s .7s both}
.standard-cinema-started .invitation-overture .overture-copy>*{animation:standard-copy-arrive 1.4s both;animation-delay:2.5s}
.standard-cinema-started .invitation-overture .overture-copy>.standard-entrance-portrait{animation-delay:2.2s}
.standard-cinema-started .invitation-overture .overture-copy>h2{animation-delay:2.8s}
.standard-cinema-started .invitation-overture .overture-copy>.overture-date{animation-delay:3s}
.standard-cinema-started .invitation-overture .overture-copy>.scroll-invitation{animation-delay:3.2s}
@keyframes standard-depth-rise{from{translate:0 55px;opacity:0}to{translate:0 0;opacity:1}}
@keyframes standard-copy-arrive{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}
.standard-cinema.photos-none #mempelai{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-block:95px;gap:28px}
.standard-cinema #story-section,.standard-cinema .closing{position:relative;isolation:isolate;width:100%!important;max-width:none!important;margin:0!important;min-height:100svh;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:95px 28px!important;border-radius:0!important;overflow:hidden;background:var(--paper)}
.standard-cinema #story-section:before,.standard-cinema .closing:before{display:none!important}
.standard-cinema #story-section>.theme-scene,.standard-cinema .closing>.theme-scene{inset:0!important;opacity:.32!important}
.standard-cinema #story-section:after,.standard-cinema .closing:after{content:'';position:absolute;inset:0!important;border:0!important;border-radius:0!important;z-index:0;pointer-events:none;background:color-mix(in srgb,var(--paper) 70%,transparent)!important}
.standard-cinema #story-section>:not(.theme-scene),.standard-cinema .closing>:not(.theme-scene){position:relative;z-index:2;max-width:430px}
.standard-cinema #events .event-block{height:auto!important;min-height:400px;overflow:visible;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 28px!important;box-sizing:border-box}
.standard-cinema #events .event-block .invite-button{position:relative;inset:auto!important;flex:none;margin-top:16px;max-width:100%;min-height:44px}
.standard-cinema :is(.scene-asleep,.page-asleep,.motion-pause) .standard-depth-arrival img,body.standard-cinema.page-asleep .standard-depth-arrival img,body.standard-cinema.motion-pause .standard-depth-arrival img{animation-play-state:paused!important}
@media(min-width:1200px){.standard-initial-reveal{left:auto;width:520px}}
@media(max-height:740px){.standard-cinema .invitation-overture{min-height:740px}.standard-cinema .standard-entrance-portrait{width:155px!important}}
@media(prefers-reduced-motion:reduce){.standard-cinema .standard-initial-reveal{display:none!important}.standard-cinema .standard-depth-arrival,.standard-cinema .standard-depth-arrival img,.standard-cinema .overture-copy>*,.standard-cinema .cover.aceh-cover-depart{animation:none!important;translate:none!important;rotate:none!important;opacity:1!important}}
/* Entrance replaces the painted composite with independently placed objects. */
.standard-cinema .invitation-overture>.theme-scene>:not(.standard-scene-depth){display:none!important}
.standard-cinema .invitation-overture>.theme-scene:after{display:none!important}
.standard-cinema .invitation-overture .standard-scene-depth{display:block;background:radial-gradient(ellipse at 20% 10%,#fff9e54d,transparent 65%),var(--paper)}
.standard-cloud-plane{position:absolute;inset:0;z-index:0;opacity:.4;animation:standard-cloud-drift 54s -18s ease-in-out infinite alternate}
.standard-cloud-plane img{position:absolute;left:-35%;top:6%;width:150%;height:auto}
.standard-distant-hills{position:absolute;left:-15%;bottom:0;width:130%;height:auto;opacity:.3;z-index:1}
.standard-identity-arrival{position:absolute;left:0;right:0;bottom:0;height:260px;z-index:2;pointer-events:none}
.standard-identity{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;transform:none}
.depth-architecture .standard-identity-arrival{left:4%;right:-8%;height:275px;bottom:12px}
.depth-garden .standard-identity-arrival{left:-12%;right:-12%;height:230px;bottom:-28px}
.depth-garden .standard-identity{transform-origin:50% 100%;animation:standard-garden-breeze 11s -4s ease-in-out infinite alternate}
.standard-depth-arrival{z-index:3;height:180px!important;top:auto!important;bottom:-30px!important;width:130px!important;left:-32px!important}
.standard-depth-arrival.depth-right{left:auto!important;right:-32px!important;width:110px!important}
.depth-tassel .standard-depth-arrival img{object-position:center bottom;transform-origin:30% 100%;animation-name:standard-garden-breeze}
.standard-scene-ground{z-index:4;height:45px}
.depth-night .standard-cloud-plane{opacity:.12}.depth-night .standard-distant-hills{opacity:.1}
.standard-cinema-started .standard-identity-arrival{animation:standard-depth-rise 2.5s .9s both}
.standard-cinema .invitation-overture{padding-bottom:270px!important}
@keyframes standard-cloud-drift{from{translate:-3% 0}to{translate:6% 0}}
.standard-cinema .scene-asleep .standard-scene-depth *,body.standard-cinema.page-asleep .standard-scene-depth *,body.standard-cinema.motion-pause .standard-scene-depth *{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.standard-cinema .standard-scene-depth *{animation:none!important;translate:none!important;rotate:none!important}}
/* Own the copy animation through completion; retiring entrance flags must not restart it. */
body.standard-cinema.standard-cinema-started .invitation-overture .overture-copy>*{animation:standard-copy-arrive 1.4s both!important;animation-delay:2.5s!important}
body.standard-cinema.standard-cinema-started .invitation-overture .overture-copy>.standard-entrance-portrait{animation-delay:2.2s!important}
body.standard-cinema.standard-cinema-started .invitation-overture .overture-copy>h2{animation-delay:2.8s!important}
body.standard-cinema.standard-cinema-started .invitation-overture .overture-copy>.overture-date{animation-delay:3s!important}
body.standard-cinema.standard-cinema-started .invitation-overture .overture-copy>.scroll-invitation{animation-delay:3.2s!important}
@media(prefers-reduced-motion:reduce){body.standard-cinema.standard-cinema-started .invitation-overture .overture-copy>*{animation:none!important;opacity:1!important;translate:none!important}}
/* Night themes keep the original light ink on a genuinely dark entrance. */
.standard-cinema .invitation-overture .standard-scene-depth.depth-night{background:radial-gradient(ellipse at 25% 5%,#3a526d80,transparent 65%),#152438}
.standard-scene-depth.depth-night .standard-scene-ground{background:linear-gradient(transparent,#152438)}
.standard-cinema.theme-midnight .invitation-overture .overture-copy{color:#f1ddb2}
.standard-cinema.theme-midnight #story-section,.standard-cinema.theme-midnight .closing{background:#152438}
.standard-cinema.theme-midnight #story-section:after,.standard-cinema.theme-midnight .closing:after{background:#152438bb!important}
