.bloom-ambient.botanical-particles{pointer-events:none;contain:layout paint;overflow:clip}.bloom-ambient.botanical-particles .ambient-float.botanical-slot{width:var(--particle-size,34px);height:var(--particle-size,34px);opacity:0;pointer-events:none;will-change:transform;perspective:320px;position:absolute;inset:0 auto auto 0;animation:none!important}.bloom-ambient.botanical-particles .botanical-sway{transform-origin:50% 35%;width:100%;height:100%;display:block}.bloom-ambient.botanical-particles .ambient-image{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;filter:none!important;animation:none!important}.bloom-ambient.botanical-particles .botanical-sway>button{pointer-events:auto;touch-action:pan-y;cursor:pointer;background:0 0;border:0;border-radius:0;width:100%;height:100%;padding:0;display:block}@media (prefers-reduced-motion:reduce){.bloom-ambient.botanical-particles .ambient-float.botanical-slot{will-change:auto}}
.bloom-ambient .ambient-float,.bloom-ambient.has-petals .ambient-float{opacity:.82;perspective:none;will-change:transform;width:34px;height:40px;animation:floral-drift var(--d,30s) ease-in-out infinite alternate;animation-delay:calc(var(--i) * -3.7s)}.bloom-ambient .ambient-image{object-fit:contain;pointer-events:none;filter:drop-shadow(0 1px 1px #46332824);width:100%;height:100%;animation:5.5s ease-in-out infinite alternate floral-image-turn;animation-delay:calc(var(--i) * -.8s);-webkit-user-select:none;user-select:none;display:block}.bloom-ambient .ambient-float>button{pointer-events:auto;border:0;width:100%;height:100%;padding:0;display:block}.bloom-ambient[data-flower=dandelion] .ambient-float{width:36px;height:43px}.bloom-ambient[data-flower=lavender] .ambient-float,.bloom-ambient[data-flower=lily] .ambient-float{width:30px;height:38px}.bloom-ambient .ambient-float:nth-child(2n){animation-direction:alternate-reverse}.has-design.invite-full>.bloom-ambient{width:min(425px,100%)}.has-design .type-cover,.is-thumbnail .type-cover{container-type:inline-size}.bloom-invitation.has-design,.bloom-invitation.is-thumbnail{container-type:normal}.gallery-masonry{columns:2;column-gap:10px;padding:0 22px;display:block}.gallery-masonry>span{column-span:all;text-align:center;padding-bottom:28px;display:block}.gallery-masonry>button{break-inside:avoid;margin:0 0 10px;display:block}.gallery-masonry>button:nth-of-type(3n+1)>img{aspect-ratio:3/4;object-fit:cover}.invite-gallery.gallery-slider,.invite-gallery.gallery-filmstrip{scroll-snap-type:x mandatory;scrollbar-width:thin;grid-auto-columns:86%;grid-auto-flow:column;gap:14px;padding:45px 22px 20px;display:grid;position:relative;overflow-x:auto}.gallery-slider>span,.gallery-filmstrip>span{position:absolute;top:0;left:22px}.gallery-slider>button,.gallery-filmstrip>button{scroll-snap-align:center;align-self:start}.gallery-slider>button>img{object-fit:cover;height:480px}.invite-gallery.gallery-filmstrip{color:#f1e7d5;background:#292a25;grid-auto-columns:70%;gap:10px;padding:50px 18px 28px}.gallery-filmstrip>button{background:repeating-linear-gradient(90deg,#2c2b25 0 13px,#f1e7d5 13px 20px,#2c2b25 20px 27px);padding:14px 6px}.gallery-filmstrip>button>img{object-fit:cover;height:360px}.invite-gallery.gallery-collage{grid-template-columns:1fr 1fr;gap:12px;padding:0 24px;display:grid}.gallery-collage>span{grid-column:1/-1;padding-bottom:20px}.gallery-collage>button{background:#fffdf7;padding:6px;transform:rotate(-3deg);box-shadow:0 2px 10px #47352e0b}.gallery-collage>button:nth-of-type(2n){transform:rotate(4deg)}.gallery-collage>button:nth-of-type(3n+1){grid-column:1/-1;transform:rotate(-1deg)}.gallery-collage>button>img{aspect-ratio:3/4;object-fit:cover}.gallery-collage>button:nth-of-type(3n+1)>img{aspect-ratio:4/3}.opening-film{pointer-events:auto;color:#fff;background:#353329;animation:4.8s linear forwards opening-film-fade;overflow:hidden}.opening-film>.opening-photo{object-fit:cover;filter:brightness(.65);width:100%;height:100%;animation:4.8s ease-in-out forwards opening-photo-travel;position:absolute;inset:0}.opening-film>.opening-film-title{color:#fff;text-align:center;letter-spacing:-.05em;font:48px/.95 Cormorant Garamond;animation:1.5s both opening-words-in;position:relative}.opening-film-title i{font-size:65px;font-weight:400}.opening-film>.flower-art{display:none}.opening-film>.bloom-names{color:#fff;font-size:18px;position:absolute;bottom:100px}.opening-film>.bloom-names>.flower-art{color:#fff}.opening-film>p{color:#fff;font-size:10px;position:absolute;bottom:74px}.opening-skip{color:#fff;z-index:1;background:#ffffff15;border:1px solid #fff5;border-radius:20px;align-items:center;gap:7px;padding:8px 11px;font-size:11px;display:flex;position:absolute;top:18px;right:18px}.has-design .invite-topbar{min-height:43px}.has-design .bloom-invite-block:not(.type-cover):not(.type-pageLink){padding-block:65px}.has-design .type-divider{padding-block:25px!important}.has-design .type-gallery{padding-inline:0}.has-design .bloom-invite-heading>span{letter-spacing:.2em;font-size:11px}.has-design .invite-poem p{font-size:14px;line-height:1.95}.has-design .bloom-reveal{transition-duration:1.1s}@keyframes floral-drift{0%{transform:translate3d(-8px, -5vh, 0) rotate(calc(var(--r,0deg) - 10deg)) scale(var(--s,1))}45%{transform:translate3d(var(--sw,26px), 7vh, 0) rotate(calc(var(--r,0deg) + 24deg)) scale(var(--s,1))}to{transform:translate3d(-15px, 24vh, 0) rotate(calc(var(--r,0deg) - 16deg)) scale(var(--s,1))}}@keyframes floral-image-turn{0%{transform:rotateY(-22deg)rotate(-12deg)}to{transform:rotateY(30deg)rotate(13deg)}}@keyframes opening-photo-travel{0%,40%{transform:scale(1.02)translate(0)}to{transform:scale(1.15)translate(-3%)}}@keyframes opening-film-fade{0%,80%{opacity:1}94%{opacity:.3}to{opacity:0}}@keyframes opening-words-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.bloom-ambient .ambient-float,.bloom-ambient .ambient-image{opacity:.8!important;animation:none!important}.opening-film{display:none}.has-design .bloom-reveal{opacity:1;transition:none}.composition-hover{transition:none}}
