.bluebloom-tpl{--bb-paper:#f5f3ee;--bb-white:#fdfcf8;--bb-ink:#2d4870;--bb-ink-mid:#4d6a93;--bb-ink-soft:#7a96bb;--bb-gold:#c9a84c;--bb-gold-lt:#e8ddb5;--bb-deep:#1c3356;font-family:var(--font-cormorant), var(--font-noto-serif-georgian), Georgia, serif;background:var(--bb-paper);color:var(--bb-ink);-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}.bluebloom-tpl p,.bluebloom-tpl h1,.bluebloom-tpl h2,.bluebloom-tpl h3{margin:0}.bluebloom-tpl .bb-nav{z-index:100;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--bb-gold-lt);background:#f5f3eef0;transition:transform .35s;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.bluebloom-tpl .bb-nav.is-visible{transform:translateY(0)}.bluebloom-tpl .bb-nav-inner{justify-content:space-between;align-items:center;max-width:960px;margin:0 auto;padding:.75rem 1.5rem;display:flex}.bluebloom-tpl .bb-nav-brand{letter-spacing:.08em;color:var(--bb-ink-mid);font-size:1.1rem;font-style:italic}.bluebloom-tpl .bb-nav-links{gap:2rem;margin:0;padding:0;list-style:none;display:flex}.bluebloom-tpl .bb-nav-links a{letter-spacing:.14em;text-transform:uppercase;color:var(--bb-ink-mid);font-size:.8rem;text-decoration:none;transition:color .2s;position:relative}.bluebloom-tpl .bb-nav-links a:after{content:"";background:var(--bb-gold);height:1px;transition:transform .2s;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.bluebloom-tpl .bb-nav-links a:hover{color:var(--bb-deep)}.bluebloom-tpl .bb-nav-links a:hover:after{transform:scaleX(1)}.bluebloom-tpl .bb-hero{background:radial-gradient(115% 90% at 50% 42%, #fffefb 0%, var(--bb-white) 48%, #f2ede1 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.bluebloom-tpl .bb-flora{pointer-events:none;z-index:0;position:absolute;inset:0}.bluebloom-tpl .bb-flora svg{display:block}.bluebloom-tpl .bb-flora-corner{width:clamp(170px,30vw,430px);height:auto;position:absolute}.bluebloom-tpl .bb-flora-tl{top:-8px;left:-8px}.bluebloom-tpl .bb-flora-tr{top:-8px;right:-8px;transform:scaleX(-1)}.bluebloom-tpl .bb-flora-bl{bottom:-8px;left:-8px}.bluebloom-tpl .bb-flora-br{bottom:-8px;right:-8px;transform:scaleX(-1)}.bluebloom-tpl .bb-flora-butterfly{width:clamp(64px,8vw,102px);height:auto;animation:8s ease-in-out infinite bluebloom-flutter;position:absolute;top:clamp(1.4rem,4.5vh,3.2rem);left:50%;transform:translate(-50%)}@keyframes bluebloom-flutter{0%,to{transform:translate(-50%)translateY(0)rotate(0)}50%{transform:translate(-50%)translateY(7px)rotate(-2deg)}}.bluebloom-tpl .bb-flora-corner .bb-sway{transform-box:view-box;animation:9.5s ease-in-out infinite bb-sway}.bluebloom-tpl .bb-flora-corner .bb-swing-a,.bluebloom-tpl .bb-flora-corner .bb-swing-b{transform-box:view-box;animation:13s ease-in-out infinite bb-swing-a}.bluebloom-tpl .bb-flora-corner .bb-swing-b{animation-name:bb-swing-b;animation-duration:15s;animation-delay:-6.2s}.bluebloom-tpl .bb-flora-tl :is(.bb-sway,.bb-swing-a,.bb-swing-b),.bluebloom-tpl .bb-flora-tr :is(.bb-sway,.bb-swing-a,.bb-swing-b){transform-origin:0 0}.bluebloom-tpl .bb-flora-bl :is(.bb-sway,.bb-swing-a,.bb-swing-b),.bluebloom-tpl .bb-flora-br :is(.bb-sway,.bb-swing-a,.bb-swing-b){transform-origin:0 100%}.bluebloom-tpl .bb-flora-tr .bb-sway{animation-duration:10.8s;animation-delay:-4.1s}.bluebloom-tpl .bb-flora-bl .bb-sway{animation-duration:11.6s;animation-delay:-6.4s}.bluebloom-tpl .bb-flora-br .bb-sway{animation-duration:10.1s;animation-delay:-2.6s}.bluebloom-tpl .bb-flora-tr .bb-swing-a{animation-delay:-3.2s}.bluebloom-tpl .bb-flora-bl .bb-swing-a{animation-delay:-7.8s}.bluebloom-tpl .bb-flora-br .bb-swing-a{animation-delay:-5.1s}@keyframes bb-sway{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.6deg)}}@keyframes bb-swing-a{0%,to{transform:rotate(1deg)}50%{transform:rotate(-.9deg)}}@keyframes bb-swing-b{0%,to{transform:rotate(-.8deg)}50%{transform:rotate(.9deg)}}.bluebloom-tpl .bb-petals{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.bluebloom-tpl .bb-petal{opacity:0;animation:linear infinite bb-petal-fall;position:absolute;top:0}.bluebloom-tpl .bb-petal svg{width:100%;height:100%;animation:ease-in-out infinite alternate bb-petal-sway;display:block;overflow:visible}@keyframes bb-petal-fall{0%{transform:translateY(-5vh) rotate(var(--bb-r0));opacity:0}6%{opacity:.95}86%{opacity:.9}to{transform:translateY(103vh) rotate(var(--bb-r1));opacity:0}}@keyframes bb-petal-sway{0%{transform:translateX(calc(-1 * var(--bb-sway)))}to{transform:translateX(var(--bb-sway))}}@media (prefers-reduced-motion:reduce){.bluebloom-tpl .bb-flora-butterfly,.bluebloom-tpl .bb-flora-corner .bb-sway,.bluebloom-tpl .bb-flora-corner .bb-swing-a,.bluebloom-tpl .bb-flora-corner .bb-swing-b,.bluebloom-tpl .bb-petal,.bluebloom-tpl .bb-petal svg{animation:none}.bluebloom-tpl .bb-petals{display:none}}.bluebloom-tpl .bb-hero-content{z-index:2;text-align:center;width:100%;max-width:780px;padding:12rem 1.5rem 5rem;position:relative}.bluebloom-tpl .bb-hero-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--bb-ink-mid);margin-bottom:1.6rem;font-size:clamp(.7rem,1.3vw,.85rem)}.bluebloom-tpl .bb-hero-dear{font-family:var(--font-noto-serif-georgian), var(--font-cormorant), serif;color:var(--bb-ink-mid);letter-spacing:.04em;margin-bottom:.4rem;font-size:clamp(1.15rem,2.6vw,1.8rem);font-weight:300;line-height:1.3}.bluebloom-tpl .bb-hero-bridge{font-family:var(--font-cormorant), serif;letter-spacing:.14em;color:var(--bb-ink-mid);margin-bottom:.3rem;font-size:clamp(.85rem,1.7vw,1.1rem);font-style:italic;font-weight:300}.bluebloom-tpl .bb-hero-names{font-family:var(--ttl-font,var(--font-noto-serif-georgian), var(--font-cormorant), serif);color:var(--bb-deep);letter-spacing:.02em;flex-direction:column;align-items:center;gap:.05em;font-size:clamp(2.4rem,5.5vw,4.8rem);font-weight:300;line-height:1.05;display:flex}.bluebloom-tpl .bb-hero-amp{font-family:var(--font-cormorant), serif;color:var(--bb-gold);font-size:.55em;font-style:italic;font-weight:300;line-height:1.2}.bluebloom-tpl .bb-hero-rule{background:linear-gradient(to right, transparent, var(--bb-gold) 25%, var(--bb-gold) 75%, transparent);width:min(300px,60%);height:1px;margin:2rem auto}.bluebloom-tpl .bb-hero-date{letter-spacing:.16em;text-transform:uppercase;color:var(--bb-ink-mid);margin-bottom:2.2rem;font-size:clamp(.85rem,1.7vw,1.1rem)}.bluebloom-tpl .bb-countdown{justify-content:center;align-items:flex-start;gap:clamp(.6rem,2.2vw,1.6rem);margin-bottom:2.8rem;display:flex}.bluebloom-tpl .bb-cu{flex-direction:column;align-items:center;min-width:3rem;display:flex}.bluebloom-tpl .bb-cn{color:var(--bb-deep);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:clamp(2.2rem,5vw,3.8rem);font-weight:300;line-height:1}.bluebloom-tpl .bb-cl{letter-spacing:.2em;text-transform:uppercase;color:var(--bb-ink-soft);margin-top:.4rem;font-size:clamp(.55rem,1vw,.7rem)}.bluebloom-tpl .bb-cs{color:var(--bb-gold);align-self:flex-start;padding-top:.05em;font-size:clamp(1.6rem,3.5vw,2.6rem);font-weight:300;line-height:1}.bluebloom-tpl .bb-cta{border:1px solid var(--bb-gold);color:var(--bb-deep);letter-spacing:.18em;text-transform:uppercase;background:0 0;padding:.9rem 3rem;font-family:inherit;font-size:clamp(.75rem,1.4vw,.9rem);text-decoration:none;transition:background .25s,color .25s;display:inline-block}.bluebloom-tpl .bb-cta:hover{background:var(--bb-gold);color:var(--bb-white)}.bluebloom-tpl .bb-scroll-down{z-index:2;justify-content:center;align-items:center;width:2rem;height:2rem;text-decoration:none;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.bluebloom-tpl .bb-scroll-down span{border-right:1px solid var(--bb-gold);border-bottom:1px solid var(--bb-gold);width:.65rem;height:.65rem;animation:2s infinite bluebloom-bounce;display:block;transform:rotate(45deg)}@keyframes bluebloom-bounce{0%,to{opacity:.4;transform:rotate(45deg)translate(-.15rem,-.15rem)}50%{opacity:1;transform:rotate(45deg)translate(.1rem,.1rem)}}.bluebloom-tpl .bb-section{padding:clamp(4.5rem,11vw,7.5rem) 1.5rem}.bluebloom-tpl .reveal{transition:opacity .7s,transform .7s}.bluebloom-tpl .reveal-rise{transform:translateY(30px)}.bluebloom-tpl .reveal.is-in{opacity:1;transform:translateY(0)}.bluebloom-tpl .bb-section-wrap{text-align:center;max-width:860px;margin:0 auto}.bluebloom-tpl .bb-section-tag{letter-spacing:.24em;text-transform:uppercase;color:var(--bb-gold);margin-bottom:.85rem;font-size:clamp(.65rem,1.2vw,.75rem);display:block}.bluebloom-tpl .bb-section-heading{font-family:var(--font-noto-serif-georgian), var(--font-cormorant), serif;color:var(--bb-deep);letter-spacing:.03em;margin-bottom:.5rem;font-size:clamp(2rem,4.8vw,3.4rem);font-weight:400}.bluebloom-tpl .bb-ornament{color:var(--bb-gold);letter-spacing:.2em;margin:.8rem 0 2.8rem;font-size:.95rem;display:block}.bluebloom-tpl .bb-details{background:var(--bb-white)}.bluebloom-tpl .bb-detail-cards{justify-content:center;align-items:stretch;display:flex}.bluebloom-tpl .bb-detail-card{flex:1;max-width:340px;padding:2.8rem 2.2rem}.bluebloom-tpl .bb-detail-sep{background:linear-gradient(to bottom, transparent 5%, var(--bb-gold-lt) 40%, var(--bb-gold-lt) 60%, transparent 95%);flex-shrink:0;align-self:stretch;width:1px}.bluebloom-tpl .bb-card-label{letter-spacing:.24em;text-transform:uppercase;color:var(--bb-gold);margin-bottom:1rem;font-size:clamp(.62rem,1.1vw,.72rem);display:block}.bluebloom-tpl .bb-card-venue{font-family:var(--font-noto-serif-georgian), var(--font-cormorant), serif;color:var(--bb-deep);margin-bottom:.6rem;font-size:clamp(1.5rem,3vw,2.1rem);font-weight:400}.bluebloom-tpl .bb-card-info{color:var(--bb-ink-mid);letter-spacing:.04em;font-size:clamp(.88rem,1.5vw,1rem);line-height:1.55}.bluebloom-tpl .bb-card-time{color:var(--bb-ink);margin-top:.2rem;font-size:clamp(1.2rem,2.4vw,1.55rem);font-weight:500}.bluebloom-tpl .bb-card-line{background:var(--bb-gold-lt);width:2rem;height:1px;margin:1.3rem auto}.bluebloom-tpl .bb-card-addr{color:var(--bb-ink-soft);font-size:clamp(.82rem,1.4vw,.95rem);font-style:italic;line-height:1.7}.bluebloom-tpl .bb-addr-num{font-variant-numeric:lining-nums;letter-spacing:.04em;color:var(--bb-ink-mid);font-style:normal}.bluebloom-tpl .bb-rsvp{background:var(--bb-paper)}.bluebloom-tpl .bb-rsvp-wrap{max-width:520px}.bluebloom-tpl .bb-rsvp-sub{color:var(--bb-ink-mid);letter-spacing:.02em;font-size:clamp(.95rem,1.7vw,1.1rem)}.bluebloom-tpl .rsvp{text-align:left;gap:1.7rem;max-width:none}.bluebloom-tpl .rsvp-field{gap:.55rem}.bluebloom-tpl .rsvp-label{font-family:var(--font-cormorant), var(--font-noto-serif-georgian), Georgia, serif;letter-spacing:.22em;text-transform:uppercase;color:var(--bb-ink-mid);opacity:1;font-size:clamp(.62rem,1.1vw,.72rem)}.bluebloom-tpl .rsvp-input{border:1px solid var(--bb-gold-lt);background:var(--bb-white);font-family:var(--font-cormorant), var(--font-noto-serif-georgian), Georgia, serif;color:var(--bb-ink);opacity:1;appearance:none;border-radius:0;padding:.85rem 1.1rem;font-size:clamp(.95rem,1.7vw,1.05rem);transition:border-color .2s}.bluebloom-tpl .rsvp-input:focus{border-color:var(--bb-gold)}.bluebloom-tpl .rsvp-input::placeholder{color:var(--bb-ink-soft);opacity:1;font-style:normal}.bluebloom-tpl .rsvp-choice{gap:.9rem}.bluebloom-tpl .rsvp-choice-btn{border:1px solid var(--bb-gold-lt);background:var(--bb-white);font-family:var(--font-cormorant), var(--font-noto-serif-georgian), Georgia, serif;color:var(--bb-ink-mid);letter-spacing:.05em;opacity:1;padding:.8rem 1rem;font-size:clamp(.88rem,1.5vw,1rem);transition:background .2s,border-color .2s,color .2s}.bluebloom-tpl .rsvp-choice-btn:hover{border-color:var(--bb-gold);opacity:1}.bluebloom-tpl .rsvp-choice-btn.is-active{border-color:var(--bb-gold);background:var(--bb-gold);color:var(--bb-white)}.bluebloom-tpl .rsvp-choice-btn.is-active>*{color:var(--bb-white)}.bluebloom-tpl .rsvp-choice-mark{width:auto;height:auto;font-size:inherit;border:none;border-radius:0}.bluebloom-tpl .rsvp-choice-btn.is-active .rsvp-choice-mark{filter:none}.bluebloom-tpl .rsvp-guest-btn{background:var(--bb-white);border:1px solid var(--bb-gold-lt);font-family:var(--font-cormorant), var(--font-noto-serif-georgian), Georgia, serif;color:var(--bb-ink);opacity:1;font-size:clamp(.95rem,1.7vw,1.05rem);transition:background .2s,border-color .2s,color .2s}.bluebloom-tpl .rsvp-guest-btn:hover{border-color:var(--bb-gold);opacity:1}.bluebloom-tpl .rsvp-guest-btn.is-active{background:var(--bb-gold);border-color:var(--bb-gold);color:var(--bb-white)}.bluebloom-tpl .rsvp-submit{background:var(--bb-deep);font-family:var(--font-cormorant), var(--font-noto-serif-georgian), Georgia, serif;letter-spacing:.18em;text-transform:uppercase;color:var(--bb-white);border:none;margin-top:0;padding:1.05rem;font-size:clamp(.78rem,1.4vw,.9rem);transition:background .25s,transform .15s}.bluebloom-tpl .rsvp-submit:not(:disabled):hover{background:var(--bb-gold);opacity:1;transform:translateY(-1px)}.bluebloom-tpl .rsvp-submit:not(:disabled):active{transform:translateY(0)}.bluebloom-tpl .rsvp-thanks{border:1px solid var(--bb-gold-lt);background:var(--bb-white);text-align:center;color:var(--bb-ink-mid);letter-spacing:.03em;flex-direction:column;align-items:center;gap:.65rem;padding:1.8rem;font-size:1.05rem;animation:.5s bluebloom-fadein;display:flex}.bluebloom-tpl .rsvp-thanks-mark{color:var(--bb-gold);margin-bottom:0;font-size:1.5rem;animation:none}.bluebloom-tpl .rsvp-thanks-title{font-family:var(--font-cormorant), var(--font-noto-serif-georgian), Georgia, serif;letter-spacing:.03em;font-variation-settings:normal;margin-bottom:0;font-size:1.05rem;font-style:normal;font-weight:400}.bluebloom-tpl .rsvp-thanks-body{opacity:1;font-size:1.05rem}@keyframes bluebloom-fadein{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bluebloom-tpl .bb-footer{background:var(--bb-deep);text-align:center;padding:3.5rem 1.5rem}.bluebloom-tpl .bb-footer-inner{flex-direction:column;align-items:center;gap:1.3rem;max-width:560px;margin:0 auto;display:flex}.bluebloom-tpl .bb-footer-ornament{color:var(--bb-gold);letter-spacing:.3em;font-size:.85rem}.bluebloom-tpl .bb-footer-credit{letter-spacing:.1em;color:var(--bb-ink-soft);font-size:clamp(.65rem,1.2vw,.75rem)}.bluebloom-tpl .bb-footer-credit strong{color:var(--bb-gold-lt)}@media (max-width:640px){.bluebloom-tpl .bb-hero-content{padding-top:7rem}.bluebloom-tpl .bb-detail-cards{flex-direction:column;align-items:center}.bluebloom-tpl .bb-detail-sep{background:linear-gradient(to right, transparent, var(--bb-gold-lt), transparent);align-self:auto;width:min(180px,55%);height:1px}.bluebloom-tpl .bb-detail-card{width:100%;max-width:100%;padding:2.2rem 1.2rem}.bluebloom-tpl .bb-nav-links{gap:1.3rem}.bluebloom-tpl .bb-nav-links a{font-size:.72rem}}
