.d-blossom{--bg:#fdf1f3;--bg2:#fbe4ea;--ink:#4d3340;--mut:#8b6b78;--ac:#c9577a;--card:rgba(255,255,255,.72);--line:rgba(201,87,122,.26);--on-ac:#fff;--hero-ink:#4d3340;--hero-bg:radial-gradient(ellipse at 50% 38%,#fff 0,#fdeef2 48%,#f9d6e0 100%);--hero-sh:transparent;--cover-bg:radial-gradient(ellipse at 50% 40%,#fff 0,#fdeef2 50%,#f8d3de 100%);--cover-ink:#4d3340;--foot-bg:rgba(255,255,255,.55);
 --fd:'Pinyon Script','Pinyon Script',cursive;--fh:'Cormorant Garamond','Mukta',serif;--fb:'Jost','Inter','Mukta',sans-serif;font-family:var(--fb);background:linear-gradient(180deg,#fff7f9 0,#fdf1f3 40%,#fbe6ec 100%)}
.d-blossom .fx{z-index:3}
.d-blossom .pl{position:absolute;top:-30px;background:center/contain no-repeat;opacity:.8;animation:bfall linear infinite,bsway ease-in-out infinite alternate;filter:drop-shadow(0 2px 3px rgba(201,87,122,.18))}
@keyframes bfall{0%{top:-30px;opacity:0}8%{opacity:.85}92%{opacity:.7}100%{top:108%;opacity:0}}
@keyframes bsway{0%{transform:translateX(-26px) rotate(-40deg)}100%{transform:translateX(34px) rotate(80deg)}}
.d-blossom .bt,.d-blossom .bb{display:block;width:100%;height:auto;pointer-events:none;overflow:visible}
.d-blossom .hero .orn-frame{inset:0;display:flex;flex-direction:column;justify-content:space-between}
.d-blossom .hero .orn-frame svg{height:auto;max-width:640px;margin:0 auto}
.d-blossom .hero .orn-frame .bt{transform-origin:50% 0}
.d-blossom .sw{animation:bsw 7s ease-in-out infinite alternate}.d-blossom .sw.s2{animation-duration:9s;animation-direction:alternate-reverse}
@keyframes bsw{0%{transform:rotate(-1.1deg)}100%{transform:rotate(1.3deg)}}
.d-blossom .fi{transform-box:fill-box;transform-origin:center;animation:bbreath 6s ease-in-out infinite alternate}
@keyframes bbreath{0%{transform:scale(.97)}100%{transform:scale(1.04)}}
.d-blossom.is-open .hero .fi{animation:bbloom 1.7s cubic-bezier(.2,.9,.3,1.15) backwards,bbreath 6s 1.8s ease-in-out infinite alternate}
@keyframes bbloom{0%{transform:scale(.2) rotate(-40deg);opacity:0}100%{transform:scale(1) rotate(0);opacity:1}}
/* hero */
.d-blossom .hero-txt{padding:200px 22px 190px}
.d-blossom .kick{color:#a93f63;letter-spacing:.44em;font-size:10.5px;font-weight:400}
.d-blossom .bcr{margin:2px auto 2px;display:block}
.d-blossom .hero .orn-crest{line-height:0}
.d-blossom .names{font-family:'Pinyon Script',cursive;font-weight:400;font-size:clamp(58px,17vw,118px);line-height:1.02;margin:6px 0 10px}
.d-blossom .names .n1,.d-blossom .names .n2{display:inline-block;padding:0 .1em .08em;background:linear-gradient(100deg,#9b3d5e 0%,#d1678a 45%,#b8466b 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.d-blossom .names .amp{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:.4em;color:#8f9a55;margin:-4px 0}
.d-blossom .when{font-family:var(--fb);letter-spacing:.22em;text-transform:uppercase;font-size:clamp(11px,3vw,13px);font-weight:400;color:var(--ink)}.d-blossom .when b{color:var(--ac)}
.d-blossom .time{color:var(--ac);letter-spacing:.3em;font-size:11px}
.d-blossom .scrollcue{color:var(--ac)}
.d-blossom .hero.has-img{--hero-ink:#fff}.d-blossom .hero.has-img .hero-sh{background:linear-gradient(180deg,rgba(60,20,35,.35),rgba(60,20,35,.6))}
.d-blossom .hero.has-img .kick,.d-blossom .hero.has-img .when,.d-blossom .hero.has-img .when b,.d-blossom .hero.has-img .time{color:#fff}
.d-blossom .hero.has-img .names .n1,.d-blossom .hero.has-img .names .n2{background:none;-webkit-text-fill-color:#fff;color:#fff;text-shadow:0 2px 18px rgba(60,20,35,.5)}.d-blossom .hero.has-img .names .amp{color:#ffe1ea}
/* sections */
.d-blossom .sh h2{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;font-size:clamp(30px,8vw,42px);color:#8f3556}
.d-blossom .intro{font-family:var(--fh);font-style:italic;font-size:clamp(20px,5vw,25px);color:#5d4350}
.d-blossom .fam b{font-family:var(--fh);font-weight:700;font-size:22px;color:#4d3340}.d-blossom .fam small{color:var(--ac);letter-spacing:.3em}
.d-blossom .ev,.d-blossom .rs-box{background:linear-gradient(170deg,rgba(255,255,255,.9),rgba(255,244,247,.7));border:1px solid rgba(201,87,122,.22);border-radius:26px;box-shadow:0 24px 50px -28px rgba(201,87,122,.45),0 2px 0 rgba(255,255,255,.9) inset}
.d-blossom .ev{padding:32px 22px 28px}
.d-blossom .ev-d b{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:500;font-size:64px;color:#d1678a}.d-blossom .ev-d span{color:var(--ac);letter-spacing:.3em}.d-blossom .ev-d small{color:var(--mut)}
.d-blossom .ev h3{font-family:'Cormorant Garamond',serif;font-weight:700;font-size:28px;color:#4d3340}.d-blossom .ev-t{color:var(--ac);letter-spacing:.16em}.d-blossom .ev-w span,.d-blossom .ev-x,.d-blossom .ev-n{color:var(--mut)}
.d-blossom .btn{background:linear-gradient(100deg,#d1678a,#c9577a);border:0;color:#fff;border-radius:999px;letter-spacing:.12em;font-weight:500;font-size:12px;box-shadow:0 10px 22px -10px rgba(201,87,122,.8)}.d-blossom .btn.ghost{background:transparent;color:#b8466b;border:1px solid rgba(201,87,122,.5);box-shadow:none}
.d-blossom .cd{gap:10px}.d-blossom .cd-c{width:clamp(70px,20vw,92px);height:clamp(70px,20vw,92px);min-width:0;padding:0;justify-content:center;border-radius:60% 0 60% 0;background:linear-gradient(145deg,#fff,#fde3ea);border:1px solid rgba(201,87,122,.3);box-shadow:0 14px 26px -16px rgba(201,87,122,.6)}
.d-blossom .cd-c b{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:600;color:#b8466b;font-size:clamp(26px,7.4vw,36px)}.d-blossom .cd-c span{font-size:8px;letter-spacing:.22em;color:var(--mut);margin-top:3px}.d-blossom .cd-date{font-family:var(--fh);font-style:italic;color:var(--mut)}
.d-blossom .st-ph img{border-radius:200px 200px 24px 24px;border:6px solid #fff;box-shadow:0 22px 44px -22px rgba(201,87,122,.55)}.d-blossom .st-ph .orn-frame{display:none}.d-blossom .st-tx p{color:#5d4350;font-size:clamp(19px,4.8vw,23px)}
.d-blossom .gi{border-radius:18px;padding:5px;background:#fff;box-shadow:0 14px 28px -18px rgba(201,87,122,.6)}.d-blossom .gi img{border-radius:14px}
.d-blossom .rs-f input,.d-blossom .rs-f textarea{background:#fff;border-color:rgba(201,87,122,.25);color:var(--ink);border-radius:14px}.d-blossom .rs-f ::placeholder{color:#b69aa6}.d-blossom .chip{border-color:rgba(201,87,122,.35);color:#8f3556}.d-blossom .chip.on{background:#c9577a;color:#fff;border-color:#c9577a}.d-blossom .rs-tick{background:#c9577a;color:#fff}
.d-blossom .end-n{font-family:'Pinyon Script',cursive;font-size:clamp(46px,13vw,72px);color:#c9577a}.d-blossom .end-t{color:#5d4350}.d-blossom .foot{border-top:1px solid rgba(201,87,122,.2)}.d-blossom .foot-b{color:#b8466b}.d-blossom .mbtn{border-color:rgba(201,87,122,.4);background:rgba(255,255,255,.85)}.d-blossom .mbtn i{background:#c9577a}
/* cover */
.d-blossom .cover{transition:opacity 1.3s .55s ease}
.d-blossom .cover.go{opacity:0;transform:none}
.d-blossom .cover>.orn{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between}.d-blossom .cover>.orn svg{height:auto;max-width:640px;margin:0 auto}
.d-blossom .cover.go .sw{animation:bgust .5s ease-in-out infinite alternate}
@keyframes bgust{0%{transform:rotate(-3.4deg)}100%{transform:rotate(3.8deg)}}
.d-blossom .cover.go .fi{animation:bburst 1s .15s cubic-bezier(.5,0,.8,.4) forwards}
@keyframes bburst{0%{transform:scale(1) rotate(0);opacity:1}60%{transform:scale(1.3) rotate(25deg);opacity:.9}100%{transform:scale(1.9) rotate(70deg);opacity:0}}
.d-blossom .cover.go .cv-in{opacity:0;transform:translateY(-10px);transition:opacity .7s,transform .7s}
.d-blossom .cv-in{padding:20px}.d-blossom .cv-kick{letter-spacing:.44em;font-size:10.5px;color:#a93f63}
.d-blossom .cv-names{font-family:'Pinyon Script',cursive;font-weight:400;font-size:clamp(54px,16vw,92px);line-height:1.02}
.d-blossom .cv-names span{background:linear-gradient(100deg,#9b3d5e,#d1678a 50%,#b8466b);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding:0 .1em .08em}
.d-blossom .cv-names i{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:.4em;color:#8f9a55}
.d-blossom .cv-date{font-family:var(--fb);font-weight:400;letter-spacing:.22em;text-transform:uppercase;font-size:12px}
.d-blossom .cv-btn{border-color:#c9577a;color:#b8466b;letter-spacing:.26em;font-size:11px;font-weight:500;background:rgba(255,255,255,.7)}.d-blossom .cv-btn:hover{background:#c9577a;color:#fff}
.d-blossom .bw-box{position:fixed;inset:0;z-index:90;pointer-events:none;overflow:hidden}
.d-blossom .bw-pt{position:absolute;background:center/contain no-repeat;will-change:transform;filter:drop-shadow(0 3px 4px rgba(201,87,122,.25));opacity:0}
@media(max-width:380px){.d-blossom .hero-txt{padding:180px 18px 170px}}
@media(prefers-reduced-motion:reduce){.d-blossom .sw,.d-blossom .fi,.d-blossom .pl{animation:none!important}.d-blossom .cover.go .fi{animation:none!important}}
.d-blossom .hero .orn-frame svg,.d-blossom .cover>.orn svg{width:min(100%,640px,56vh)}
@media(min-width:900px){.d-blossom .hero .orn-frame .bt,.d-blossom .cover>.orn .bt{margin-left:0}.d-blossom .hero .orn-frame .bb,.d-blossom .cover>.orn .bb{margin-right:0}.d-blossom .hero-txt{padding-top:230px;padding-bottom:200px}}
