/* Separate Premium collection: each design has its own composition. */
.invite-button{min-height:48px;border-radius:999px;padding:13px 22px;gap:10px;font-size:13px;line-height:1.4;letter-spacing:.25px;font-weight:500;border:1px solid color-mix(in srgb,var(--color) 75%,transparent);box-shadow:0 4px 14px color-mix(in srgb,var(--color) 10%,transparent);transition:background .25s ease,transform .25s ease,box-shadow .25s ease}
.cover #open-invitation{background:var(--color);color:var(--paper);border-color:var(--color);min-width:214px;box-shadow:0 6px 24px color-mix(in srgb,var(--color) 20%,transparent);position:relative}
.cover #open-invitation .button-arrow{display:grid;place-items:center;margin-left:6px;border:1px solid currentColor;border-radius:50%;width:25px;height:25px;opacity:.75}
.invite-button .ui-icon{width:18px;height:18px;flex-shrink:0}.invite-button:hover{transform:translateY(-2px);box-shadow:0 8px 22px color-mix(in srgb,var(--color) 18%,transparent)}.invite-button:active{transform:translateY(0) scale(.98)}.invite-button:disabled{transform:none;box-shadow:none}
.inv-nav{border-radius:999px;padding:5px 8px;bottom:max(14px,env(safe-area-inset-bottom));gap:2px}.inv-nav a{min-height:44px;padding:11px 14px;border-radius:999px}.motion-control{min-height:44px;border-radius:999px;border:1px solid color-mix(in srgb,var(--color) 20%,transparent);background:color-mix(in srgb,var(--paper) 90%,transparent);color:var(--color);padding:8px 14px;font-size:11px}
.premium-cover-portrait{position:relative;width:180px;height:226px;margin:0 auto 22px;isolation:isolate}.premium-cover-portrait img{height:100%;object-fit:cover;object-position:center 35%;border-radius:100px 100px 8px 8px}.portrait-frame{position:absolute;inset:-7px;border:1px solid currentColor;border-radius:106px 106px 12px 12px;pointer-events:none}.portrait-frame:after{content:'';position:absolute;inset:-5px;border:1px solid currentColor;border-radius:inherit;opacity:.35}.premium-edition{display:block;font:italic 12px 'Cormorant Garamond',serif;letter-spacing:2px;margin:0 0 18px;opacity:.8}.tier-premium .cover{min-height:800px}.tier-premium .cover .cover-content{padding:75px 26px 85px;width:100%;border:0}.tier-premium .cover .couple-monogram{width:68px;height:68px;font-size:28px;margin:0 auto 20px}.tier-premium .cover h1{font-size:clamp(43px,11vw,60px);margin:20px 0;line-height:1.12}.tier-premium .cover h1>span:not(.ampersand){display:inline}.tier-premium .cover .ampersand{display:inline;font-size:.65em;margin:0 5px}.tier-premium .cover-date{margin-bottom:22px}.tier-premium .guest-block{background:color-mix(in srgb,var(--paper) 88%,transparent);color:var(--color);max-width:270px;border:1px solid color-mix(in srgb,var(--color) 12%,transparent);border-radius:4px;padding:14px 18px}.tier-premium .cover-content:before{content:'';position:absolute;inset:50px 22px 32px;border:1px solid color-mix(in srgb,var(--color) 30%,transparent);border-radius:200px 200px 8px 8px;z-index:-1;background:color-mix(in srgb,var(--paper) 65%,transparent)}
.design-eden .premium-cover-portrait{width:172px;height:222px}.design-eden .premium-cover-portrait img,.design-eden .portrait-frame{border-radius:50%}.design-eden .cover-content:before{border-radius:48% 48% 6px 6px;inset:44px 30px 30px}.design-eden .profile-photo{border-radius:50%;aspect-ratio:4/5}.design-eden .event-block{border-radius:110px 110px 8px 8px;border:1px solid #73836a66;background:#fffdf5e8}
.design-aurelia .premium-cover-portrait{width:205px;height:205px}.design-aurelia .premium-cover-portrait img,.design-aurelia .portrait-frame{border-radius:50%}.design-aurelia .cover-content:before{border-radius:0;inset:42px 22px 32px;border:double 4px #ad936466;background:#fffaf0c9}.design-aurelia .cover h1{font-family:'Cormorant Garamond',serif;font-size:52px}.design-aurelia .cover h1>span:not(.ampersand){display:block}.design-aurelia .event-block{border-radius:2px;border:double 4px #ad936466}.design-aurelia .profile-photo{border-radius:120px 120px 0 0}
.design-celestia .cover{color:#eadbb6}.design-celestia .premium-cover-portrait img,.design-celestia .portrait-frame{border-radius:90px 90px 90px 90px}.design-celestia .cover-content:before{background:#152238b8;border-color:#cfb47b66}.design-celestia .cover .guest-block{background:#172337d9;color:#eadbb6;border-color:#cfb47b66}.design-celestia.cover #open-invitation,.design-celestia .cover #open-invitation{background:#e5d1a5;color:#172337;border-color:#e5d1a5}.design-celestia .event-block{background:#243249;color:#eadbb6;border:1px solid #b59e72;border-radius:100px 100px 8px 8px}.design-celestia .profile-photo{border-radius:120px 120px 6px 6px;outline:1px solid #cfb47b;outline-offset:7px}
.design-rosalia .premium-cover-portrait{width:186px;height:230px}.design-rosalia .cover-content:before{border-radius:180px 180px 16px 16px;background:#fff4f4bd}.design-rosalia .cover .couple-monogram{display:none}.design-rosalia .cover h1{font-size:60px;max-width:260px;margin:20px auto}.design-rosalia .cover h1>span:not(.ampersand){display:block}.design-rosalia .cover .ampersand{display:block;margin:0;font-size:26px}.design-rosalia .profile-photo{border-radius:140px 140px 60px 60px}.design-rosalia .event-block{border-radius:80px 80px 14px 14px;background:#fff9f9eb}
.design-puspita .premium-cover-portrait{width:186px;height:215px}.design-puspita .premium-cover-portrait img,.design-puspita .portrait-frame{border-radius:130px 130px 4px 4px}.design-puspita .cover-content:before{border-radius:45% 45% 4px 4px;background:#f8efdedb;border:double 4px #b28d5366}.design-puspita .cover h1{font-family:'Cormorant Garamond',serif;font-size:52px}.design-puspita .event-block{border-radius:120px 120px 2px 2px;border:double 4px #b28d5380;background:#fffaeeed}.design-puspita .profile-photo{border-radius:150px 150px 4px 4px;border-bottom:5px solid #b28d53}
.design-lumiere .premium-cover-portrait{width:210px;height:260px;rotate:-3deg;background:#fffaf0;padding:9px 9px 26px;box-shadow:4px 10px 22px #4b3f3226}.design-lumiere .premium-cover-portrait img{border-radius:0}.design-lumiere .portrait-frame{display:none}.design-lumiere .cover-content:before{border-radius:0;border:0;background:#f5efe4c7;inset:25px 20px}.design-lumiere .cover .couple-monogram{display:none}.design-lumiere .cover h1{font:46px/1.12 'Cormorant Garamond',serif;letter-spacing:-1px}.design-lumiere .cover .ampersand{font-style:italic}.design-lumiere .event-block{border-radius:0;border:0;border-top:1px solid #8e817966;background:#fffaf0ed}.design-lumiere .profile-photo{border-radius:0;box-shadow:8px 10px 0 #e3d7c6}
.tier-premium .invitation-overture .overture-photo{max-width:290px}.design-eden .overture-photo{border-radius:48%;overflow:hidden}.design-aurelia .overture-copy{border:double 4px #ad936466;margin:36px 24px;padding:50px 20px}.design-celestia .celestial-monogram{border-radius:50%;outline:1px solid #cfb47b;outline-offset:12px}.design-rosalia .overture-photo{border-radius:130px 130px 10px 10px;overflow:hidden;outline:1px solid #80536366;outline-offset:8px}.design-puspita .woven-monogram{border:double 4px #b28d53;background:#f8efdecc}.design-lumiere .overture-photo{rotate:2deg;background:#fff;padding:8px 8px 24px;box-shadow:8px 12px 25px #4b3f3222}
@media(max-width:400px){.tier-premium .cover .cover-content{padding-inline:20px}.tier-premium .cover-content:before{inset-inline:17px}.tier-premium .cover h1{font-size:47px}.design-rosalia .cover h1{font-size:54px}.inv-nav a{padding-inline:11px}.premium-cover-portrait{width:158px;height:200px}}
@media(prefers-reduced-motion:reduce){.invite-button{transition:none}.invite-button:hover,.invite-button:active{transform:none}}

/* Distinct premium gate choreography; all end before the shared scene reveal. */
.design-aurelia.entrance-running .veil-left{transform-origin:left center;animation:estate-left 4.8s cubic-bezier(.33,0,.2,1) both}.design-aurelia.entrance-running .veil-right{transform-origin:right center;animation:estate-right 4.8s cubic-bezier(.33,0,.2,1) both}
.design-celestia.entrance-running .cinematic-veil{animation:celestial-veil 5.4s cubic-bezier(.33,0,.2,1) both}
.design-lumiere.entrance-running .veil-left{animation:coast-left 5s cubic-bezier(.33,0,.2,1) both}.design-lumiere.entrance-running .veil-right{animation:coast-right 5s cubic-bezier(.33,0,.2,1) both}
.design-puspita .cinematic-veil{background:repeating-linear-gradient(90deg,#ead5b9,#f6e8d1 16px,#e6cfab 18px);color:#795732}.design-puspita.entrance-running .veil-left,.design-puspita.entrance-running .veil-right{animation-duration:5.2s}
.design-eden .cinematic-veil{background:#eef2e8}.design-eden.entrance-running .veil-left,.design-eden.entrance-running .veil-right{animation-duration:4.6s}.design-rosalia .cinematic-veil{background:#fff2f3}.design-rosalia.entrance-running .veil-left,.design-rosalia.entrance-running .veil-right{animation-duration:5s}
@keyframes estate-left{0%,12%{transform:perspective(1000px) rotateY(0);opacity:1}100%{transform:perspective(1000px) rotateY(-105deg);opacity:0}}@keyframes estate-right{0%,12%{transform:perspective(1000px) rotateY(0);opacity:1}100%{transform:perspective(1000px) rotateY(105deg);opacity:0}}@keyframes celestial-veil{0%,15%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.2)}}@keyframes coast-left{0%,12%{transform:translate3d(0,0,0)}100%{transform:translate3d(-110%,-10%,0) skewY(-4deg)}}@keyframes coast-right{0%,12%{transform:translate3d(0,0,0)}100%{transform:translate3d(110%,10%,0) skewY(4deg)}}
@media(prefers-reduced-motion:reduce){.cinematic-veil{animation:none!important}}

/* Independent, transparent assets; background now supports rather than supplies the ornament. */
.tier-premium .cover .grand-scenery,.tier-premium .cover .java-landscape{opacity:.42}.tier-premium .cover .upper-floral,.tier-premium .cover .painted-floral,.tier-premium .cover .grand-bouquet,.tier-premium .cover .java-botanical{display:none}
.premium-separated-art{position:absolute;inset:0;z-index:4;pointer-events:none}.separate-edge{position:absolute;top:0;bottom:0;width:86px}.edge-left{left:0}.edge-right{right:0;transform:scaleX(-1)}.asset-track{position:absolute;width:100px;transform-origin:30% 85%}.asset-track-1{top:-16px;left:-26px;width:100px;animation:asset-branch 11s ease-in-out infinite alternate}.asset-track-2{top:24%;left:-26px;width:92px;animation:asset-float 9s ease-in-out infinite alternate}.asset-track-3{bottom:3%;left:-33px;width:112px;animation:asset-branch 14s ease-in-out infinite alternate-reverse}.asset-track-4{bottom:14%;left:-29px;width:84px;animation:asset-flower 10s ease-in-out infinite alternate}.separate-asset{width:100%;height:auto;filter:drop-shadow(0 3px 5px #66564112)}.edge-right .asset-track{animation-delay:-5s}.edge-right .asset-track-2{top:33%;animation-delay:-3s}.edge-right .asset-track-4{bottom:22%;animation-delay:-7s}.asset-lantern{transform-origin:50% 0%;animation:asset-lantern 8s ease-in-out infinite alternate}.art-lumiere .asset-track-1{width:100px;top:0;left:-10px}.art-celestia .asset-track-1{opacity:.8}.art-puspita .asset-track-2{width:80px;left:-28px}.inv-section .premium-separated-art{opacity:.75}.inv-section .asset-track-2,.inv-section .asset-track-4{display:none}.inv-section .asset-track-1{width:70px;left:-24px}.inv-section .asset-track-3{width:78px;left:-30px}.cinematic-stage .premium-separated-art{z-index:2}.entrance-running .cinematic-stage .asset-track-1{animation:asset-arrive-top 8s cubic-bezier(.33,0,.2,1) both}.entrance-running .cinematic-stage .asset-track-2,.entrance-running .cinematic-stage .asset-track-3,.entrance-running .cinematic-stage .asset-track-4{animation:asset-arrive-side 8s cubic-bezier(.33,0,.2,1) both}
@keyframes asset-branch{from{transform:rotate(-4deg) translate3d(0,0,0)}to{transform:rotate(5deg) translate3d(3px,-5px,0)}}@keyframes asset-float{from{transform:translate3d(0,8px,0) rotate(-3deg)}to{transform:translate3d(4px,-8px,0) rotate(3deg)}}@keyframes asset-flower{from{transform:rotate(-5deg) scale(.97)}to{transform:rotate(5deg) scale(1.025)}}@keyframes asset-lantern{from{transform:rotate(-6deg)}to{transform:rotate(6deg)}}@keyframes asset-arrive-top{0%{transform:translate3d(0,-100px,0) rotate(-10deg);opacity:0}30%{opacity:1}100%{transform:translate3d(0,0,0) rotate(0);opacity:1}}@keyframes asset-arrive-side{0%{transform:translate3d(-70px,35px,0);opacity:0}35%{opacity:1}100%{transform:translate3d(0,0,0);opacity:1}}
@media(max-width:600px){.design-lumiere .couple-profiles article{text-align:center;display:block}.design-lumiere .couple-profiles .profile-photo{margin:0 auto 24px}.design-lumiere .couple-profiles .profile-initial{font-size:30px;display:block;text-align:center;margin:10px auto}.design-lumiere .couple-profiles .profile-rule{margin:18px auto}.design-lumiere .couple-profiles .profile-amp{text-align:center;margin:30px auto;width:100%}.design-lumiere .couple-profiles h3,.design-lumiere .couple-profiles p{text-align:center}.separate-edge{width:70px}.asset-track-2{width:78px;left:-25px}.asset-track-3{width:96px;left:-35px}.asset-track-4{width:70px;left:-24px}}
@media(prefers-reduced-motion:reduce){.asset-track,.asset-lantern{animation:none!important}}
.motion-pause .asset-track,.motion-pause .asset-lantern,.page-asleep .asset-track,.page-asleep .asset-lantern{animation-play-state:paused!important}

/* Names follow the portrait in normal flow on mobile, with readable contrast. */
.design-lumiere .overture-portrait{text-align:center}.design-lumiere .overture-portrait .overture-copy{padding:24px 22px 100px;background:color-mix(in srgb,var(--paper) 86%,transparent);margin:10px 8px;border-radius:3px}.design-lumiere .overture-portrait h2{margin:35px auto 24px;color:var(--color);text-shadow:none;font:54px/1.14 'Cormorant Garamond',serif;letter-spacing:-1px;max-width:100%;position:static}.design-lumiere .overture-portrait .kicker{margin-top:24px;text-align:center;letter-spacing:2px}.design-lumiere .overture-portrait .editorial-issue{justify-content:center;text-align:center;gap:18px}.design-lumiere .overture-portrait .overture-photo{margin:20px auto 0;max-width:270px}.design-lumiere .overture-portrait .scroll-invitation{margin-inline:auto}
@media(max-width:600px){.theme-portrait .overture-portrait{text-align:center}.theme-portrait .overture-portrait h2{margin:35px auto 24px;color:var(--color);text-shadow:none;font:48px/1.15 'Cormorant Garamond',serif;letter-spacing:-1px;position:static}.theme-portrait .overture-portrait .kicker{margin-top:24px;text-align:center}.theme-portrait .overture-portrait .overture-photo{margin-inline:auto}}
.premium-water{position:absolute;left:0;right:0;top:65%;height:26%;z-index:1;overflow:hidden;pointer-events:none;mask-image:linear-gradient(transparent,#000 20%,#000 75%,transparent);opacity:.65}.premium-water svg{width:100%;height:100%;overflow:visible}.water-lines{fill:none;stroke:#fff4d7;stroke-width:1.2;stroke-opacity:.65;transform-origin:center;animation:water-glide 9s ease-in-out infinite alternate}.water-lines-b{stroke-width:.7;stroke-opacity:.45;animation:water-glide-back 12s ease-in-out infinite alternate}.water-pond{left:18%;right:18%;top:70%;height:20%;opacity:.45}.water-reflection{position:absolute;left:42%;width:18%;height:100%;top:0;background:repeating-linear-gradient(0deg,transparent 0 10px,#fff1be55 11px 12px,transparent 13px 19px);mask-image:radial-gradient(ellipse,#000,transparent 70%);animation:water-sparkle 7s ease-in-out infinite alternate}.inv-section .premium-water{opacity:.22}
@keyframes water-glide{from{transform:translate3d(-16px,-2px,0) scaleY(.95);opacity:.45}to{transform:translate3d(16px,3px,0) scaleY(1.06);opacity:.8}}@keyframes water-glide-back{from{transform:translate3d(12px,3px,0);opacity:.3}to{transform:translate3d(-12px,-2px,0);opacity:.65}}@keyframes water-sparkle{from{transform:scaleX(.82) translateY(-3px);opacity:.35}to{transform:scaleX(1.1) translateY(3px);opacity:.7}}
.motion-pause .water-lines,.motion-pause .water-reflection,.page-asleep .water-lines,.page-asleep .water-reflection{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.water-lines,.water-reflection{animation:none!important}}

.invite-button [data-icon]{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px}.invite-button .ui-icon{margin:0}#rsvp-form .invite-button{display:flex;align-items:center;justify-content:center;gap:9px;text-align:center}

/* Recorded waves replace synthetic ripple artwork on the coastal collection. */
.real-ocean-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;z-index:0;opacity:.9;pointer-events:none}.design-lumiere .theme-scene:has(.real-ocean-video) .grand-scenery{display:none}.design-lumiere .theme-scene:has(.real-ocean-video) .living-layer{display:none}.design-lumiere .inv-section .real-ocean-video{opacity:.24}.design-lumiere .cover-content:before{background:#f5efe4b8}.design-lumiere .overture-portrait .overture-copy{background:#f5efe4bd}.design-lumiere .cover .theme-scene:after{opacity:.15}.cinematic-stage .real-ocean-video{opacity:1}
