.d-bdconfetti{--bg:#fffaf1;--bg2:#fdeed8;--ink:#17414a;--mut:#5f7f85;--ac:#0f7f86;--card:#fff;--line:rgba(23,65,74,.14);--on-ac:#fff;--hero-ink:#17414a;--hero-bg:radial-gradient(ellipse 80% 45% at 50% 34%,#fff,transparent 72%),#fffaf1;--hero-sh:transparent;--cover-bg:radial-gradient(ellipse 80% 55% at 50% 38%,#1d9aa0 0%,#0f6a74 55%,#0a4a57 100%);--cover-ink:#fff;--foot-bg:#fdeed8;
 --fd:'Bodoni Moda','Playfair Display',serif;--fh:'Bodoni Moda','Mukta',serif;--fb:'Jost','Inter','Mukta',sans-serif;font-family:var(--fb);background:var(--bg)}
.d-bdconfetti::before{content:'';position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 8% 20%,rgba(22,147,154,.1),transparent 34%),radial-gradient(circle at 94% 60%,rgba(240,88,74,.09),transparent 34%),radial-gradient(circle at 30% 96%,rgba(242,182,50,.14),transparent 36%)}
.d-bdconfetti .fx{z-index:0}.d-bdconfetti .fx i{position:absolute;top:-20px;opacity:0;border-radius:2px;animation:cff linear infinite}.d-bdconfetti .fx i.cf0{border-radius:50%}
@keyframes cff{0%{transform:translate3d(0,0,0) rotate(0);opacity:0}8%{opacity:.7}90%{opacity:.6}100%{transform:translate3d(40px,112vh,0) rotate(540deg);opacity:0}}
.d-bdconfetti svg.ck,.d-bdconfetti svg.cr1{max-width:none}
/* hero */
.d-bdconfetti .hero{align-items:center}.d-bdconfetti .hero-txt{padding:112px 22px 120px}
.d-bdconfetti .hero .orn-frame{inset:0;overflow:hidden}.d-bdconfetti .hero .orn-frame svg.hb{position:absolute;left:0;top:0;width:100%;height:auto;min-width:420px}.d-bdconfetti .hero .orn-frame svg.hd{position:absolute;inset:0;width:100%;height:100%;opacity:.55}
.d-bdconfetti .orn-crest svg.cr1{width:clamp(78px,22vw,100px);height:auto;margin:0 auto;display:block;overflow:visible}
.d-bdconfetti .fl{transform-box:fill-box;transform-origin:50% 100%}.d-bdconfetti .fm,.d-bdconfetti .fm2{transform-box:fill-box;transform-origin:50% 100%;animation:flk 1.6s ease-in-out infinite}.d-bdconfetti .fm2{animation-delay:-.4s}.d-bdconfetti .gw{animation:gwp 2.4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes flk{0%,100%{transform:scale(1,1) rotate(-2deg)}50%{transform:scale(.92,1.12) rotate(3deg)}}@keyframes gwp{0%,100%{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}
.d-bdconfetti .kick{font-family:'Jost',sans-serif;font-weight:500;font-size:11px;letter-spacing:.38em;color:#16939a}
.d-bdconfetti .names{font-family:'Bodoni Moda',serif;font-weight:800;font-size:clamp(52px,17vw,118px);line-height:1;margin:6px 0 16px;letter-spacing:-.01em}
.d-bdconfetti .names .n1{color:#f0584a;padding:0 .04em;word-break:break-word;background:linear-gradient(180deg,#f46a5a,#e24a4e);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.d-bdconfetti .when{font-family:'Bodoni Moda',serif;font-style:italic;font-weight:500;font-size:clamp(17px,4.6vw,22px);flex-direction:column;gap:2px}.d-bdconfetti .when b{display:none}
.d-bdconfetti .time{font-family:'Jost',sans-serif;color:#0f7f86;font-weight:500;letter-spacing:.3em;font-size:12px}
.d-bdconfetti .sh h2{font-family:'Bodoni Moda',serif;font-weight:700;font-size:clamp(26px,6.4vw,38px);color:#17414a}
.d-bdconfetti .intro{font-family:'Bodoni Moda',serif;font-style:italic;font-size:clamp(18px,4.6vw,23px);color:var(--ink)}
.d-bdconfetti .fam small{color:#f0584a;letter-spacing:.3em}.d-bdconfetti .fam b{font-family:'Bodoni Moda',serif;font-weight:700}
.d-bdconfetti .ev{border-radius:20px;padding:44px 22px 28px;box-shadow:0 26px 44px -32px rgba(23,65,74,.6);border:1px solid rgba(23,65,74,.1);overflow:visible}
.d-bdconfetti .ev::before{content:'';position:absolute;left:0;right:0;top:0;height:8px;border-radius:20px 20px 0 0;background:repeating-linear-gradient(90deg,#f0584a 0 24px,#f2b632 24px 48px,#16939a 48px 72px)}
.d-bdconfetti .ev .orn-evmark{position:absolute;left:50%;top:-18px;transform:translateX(-50%) rotate(8deg)}
.d-bdconfetti .ev-d b{font-family:'Bodoni Moda',serif;font-weight:800;font-size:58px;color:#f0584a}.d-bdconfetti .ev-d span{letter-spacing:.3em;color:var(--ink);font-weight:500}
.d-bdconfetti .ev h3{font-family:'Bodoni Moda',serif;font-weight:700;font-size:26px}.d-bdconfetti .ev-t{color:#0f7f86;font-weight:600}
.d-bdconfetti .btn{background:#0f7f86;border-color:#0f7f86;border-radius:4px;font-weight:600;letter-spacing:.14em}.d-bdconfetti .btn.ghost{background:transparent;color:#0f7f86}
.d-bdconfetti .cd{gap:8px}.d-bdconfetti .cd-c{min-width:0;width:clamp(64px,19vw,88px);padding:14px 4px 10px;border-radius:12px;background:#fff;border:0;border-top:5px solid #f0584a;box-shadow:0 14px 24px -16px rgba(23,65,74,.55)}
.d-bdconfetti .cd-c:nth-child(2){border-color:#f2b632;transform:rotate(1.5deg)}.d-bdconfetti .cd-c:nth-child(3){border-color:#16939a;transform:rotate(-1.5deg)}.d-bdconfetti .cd-c:nth-child(4){border-color:#ff9d8f}
.d-bdconfetti .cd-c b{font-family:'Bodoni Moda',serif;font-weight:800;color:#17414a;font-size:clamp(26px,7.5vw,36px)}.d-bdconfetti .cd-c span{font-size:9px;letter-spacing:.16em}
.d-bdconfetti .cd-date{font-family:'Bodoni Moda',serif;font-style:italic;color:var(--mut);font-size:18px}
.d-bdconfetti .st-ph img{border-radius:14px;border:6px solid #fff;box-shadow:0 20px 34px -22px rgba(23,65,74,.6);transform:rotate(-2deg)}.d-bdconfetti .st-ph .orn-frame{display:none}.d-bdconfetti .st-tx p{font-family:'Bodoni Moda',serif;font-size:clamp(17px,4.4vw,20px);line-height:1.7}
.d-bdconfetti .gi{border-radius:10px;border:6px solid #fff;box-shadow:0 14px 26px -16px rgba(23,65,74,.55)}
.d-bdconfetti .rs-box{background:#fff;border-radius:20px;border:1px solid rgba(23,65,74,.1);box-shadow:0 26px 44px -32px rgba(23,65,74,.6)}.d-bdconfetti .rs-f input,.d-bdconfetti .rs-f textarea{background:#fffcf6;border-color:rgba(23,65,74,.2);border-radius:8px}.d-bdconfetti .chip{border-radius:8px}.d-bdconfetti .chip.on{background:#0f7f86;border-color:#0f7f86}.d-bdconfetti .rs-tick{background:#0f7f86}
.d-bdconfetti .mck{width:104px;margin:0 auto}.d-bdconfetti .mck svg{width:100%;height:auto;display:block;max-width:none}
.d-bdconfetti .end-n{font-family:'Bodoni Moda',serif;font-weight:800;font-style:italic;font-size:clamp(30px,8vw,44px);color:#f0584a}.d-bdconfetti .end-t{font-family:'Bodoni Moda',serif;font-size:clamp(17px,4.4vw,21px)}
.d-bdconfetti .foot{border-top:0}.d-bdconfetti .foot-b{font-family:'Bodoni Moda',serif;color:#17414a}.d-bdconfetti .chipl{background:#fff;border-radius:6px}
/* cover */
.d-bdconfetti .cover{align-items:flex-end;transition:opacity .7s 1.7s ease}.d-bdconfetti .cover.go{transform:none}
.d-bdconfetti .cover>.orn{overflow:hidden}.d-bdconfetti .cover>.orn svg.cvd{position:absolute;inset:0;width:100%;height:100%;opacity:.5}.d-bdconfetti .cover>.orn svg.cvb{position:absolute;left:0;top:0;width:100%;height:auto;min-width:420px}
.d-bdconfetti .cake{position:absolute;left:50%;top:max(46px,6.5vh);width:min(72vw,290px);transform:translateX(-50%);animation:ckb 4s ease-in-out infinite}.d-bdconfetti .cake svg{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 20px rgba(0,0,0,.28))}
@keyframes ckb{0%,100%{translate:0 0}50%{translate:0 -5px}}
.d-bdconfetti .cover.go .cake{animation:ckp .6s ease-out both}@keyframes ckp{0%{transform:translateX(-50%) scale(1)}40%{transform:translateX(-50%) scale(1.04,.97)}100%{transform:translateX(-50%) scale(1)}}
.d-bdconfetti .cover.go .fl .fm,.d-bdconfetti .cover.go .fl .fm2{animation:fout .3s ease-in forwards}.d-bdconfetti .cover.go .gw{animation:fout .3s ease-in forwards}@keyframes fout{to{transform:scale(0,.1);opacity:0}}
.d-bdconfetti .cover.go .smk{animation:smk 1.4s ease-out .15s forwards}@keyframes smk{0%{opacity:0;transform:translateY(0)}20%{opacity:.9}100%{opacity:0;transform:translateY(-26px)}}
.d-bdconfetti .bcf{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}.d-bdconfetti .bcf i{position:absolute;width:9px;height:9px;border-radius:2px;opacity:0;animation:cfx 1.7s cubic-bezier(.15,.75,.35,1) both}
@keyframes cfx{0%{opacity:1;transform:translate3d(0,0,0) rotate(0) scale(.5)}40%{opacity:1;transform:translate3d(calc(var(--dx)*.85),var(--dy),0) rotate(calc(var(--r)*.5)) scale(1)}100%{opacity:0;transform:translate3d(var(--dx),calc(var(--dy) + 260px),0) rotate(var(--r))}}
.d-bdconfetti .cv-in{z-index:4;padding:0 24px max(5.5vh,34px);transition:opacity .5s .5s}.d-bdconfetti .cover.go .cv-in{opacity:0}
.d-bdconfetti .cv-kick{color:#ffd978;font-weight:500;letter-spacing:.38em;font-size:11px}
.d-bdconfetti .cv-names{font-family:'Bodoni Moda',serif;font-weight:800;font-size:clamp(46px,15vw,84px);line-height:1.02;margin:4px 0 4px;color:#fff}.d-bdconfetti .cv-names span{color:#fff}
.d-bdconfetti .cv-date{font-family:'Bodoni Moda',serif;font-style:italic;font-size:clamp(15px,4vw,19px);margin-bottom:18px;color:#e6f6f4}
.d-bdconfetti .cv-btn{background:#f0584a;border:0;color:#fff;border-radius:4px;font-weight:600;letter-spacing:.2em;font-size:12px;box-shadow:0 12px 24px -10px rgba(0,0,0,.5);animation:none}.d-bdconfetti .cv-btn:hover{background:#e24a3d;color:#fff}
@media(max-height:700px){.d-bdconfetti .cake{width:min(60vw,236px);top:34px}.d-bdconfetti .cv-names{font-size:clamp(40px,12.5vw,60px)}}
@media(prefers-reduced-motion:reduce){.d-bdconfetti .cake,.d-bdconfetti .fm,.d-bdconfetti .fm2,.d-bdconfetti .gw{animation:none!important}}
