.theme-blue{--paper:#f6f9fc;--ink:#29445c;--accent:#456985;--line:#a9bfd1;--wash:#e2edf5;--swatch1:#afcfe5;--swatch2:#f1efe9;--swatch3:#bdc6ce}.theme-blue h1{font-style:italic}.theme-blue .hero{min-height:740px;padding:150px 9% 155px;background:radial-gradient(ellipse at 10% 0%,#fff 0,transparent 60%),linear-gradient(140deg,#d8eaf7,#bdd5e7 48%,#edf4fa);overflow:hidden}.hero:after{content:'';position:absolute;inset:28px;border:1px solid #ffffff9c;pointer-events:none;z-index:1}.hero .copy{z-index:2}.cover-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.cover-shade{position:absolute;inset:0;z-index:1;pointer-events:none;display:none}.has-cover .cover-shade{display:block;background:linear-gradient(180deg,rgba(12,31,48,var(--cover-shade)),rgba(12,31,48,calc(var(--cover-shade) + .1)))}.has-cover .copy{color:#fff;text-shadow:0 2px 12px #10243466}.has-cover .date-control{color:#fff;background:#18344933;border-color:#ffffff99}.theme-blue #music-toggle{z-index:3;right:42px;top:44px}.cover-tools{position:absolute;bottom:42px;left:32px;right:32px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap;z-index:3}.cover-tools button{font-size:16px;background:#f4f9fbe8;color:#29445c}.theme-blue .intro{text-align:center;background:linear-gradient(#f6f9fc,#e9f2f8,#f6f9fc);padding-top:40px}.blue-bouquet{width:360px;max-width:100%;margin:0 auto 30px;pointer-events:none}.theme-blue .venue-upload{border-radius:220px 220px 4px 4px;outline:1px solid var(--line);outline-offset:7px}.theme-blue .program{margin:0 5%;border-radius:160px 160px 8px 8px;padding-top:100px;background:linear-gradient(145deg,#d4e5f2,#edf4f9)}.theme-blue .program .section-number{text-align:center}.theme-blue .schedule{border-color:#849fb4}.theme-blue .outfit{display:block;text-align:center}.theme-blue .outfit .copy{max-width:600px;margin:auto}.theme-blue .palette{margin-top:35px}.theme-blue .palette span:before{box-shadow:inset 0 0 12px #ffffff90,0 5px 14px #446b8512}.theme-blue .gallery-section{border-color:#b8cbd9}.theme-blue .letter-art{background:linear-gradient(135deg,#fff,#dbe9f2);box-shadow:0 16px 30px #29445c16}.theme-blue .letter-art span{background:#789bb6}.theme-blue .invitation-rsvp{background:linear-gradient(130deg,#ddeaf4,#edf5fa);border-radius:150px 150px 0 0;margin:0 4%}.theme-blue .closing{background:linear-gradient(#f6f9fc,#e1edf5)}.theme-blue .closing:before{border-width:2px}.editing .has-cover [data-field]{outline-color:#ffffff80}.editing .has-cover [data-field]:after{color:#fff}.editing .has-cover [data-field]:focus{background:#19364e77}.theme-blue .intro .blue-bouquet{transition:opacity .9s ease,translate .9s ease}.intro.reveal-ready:not(.visible) .blue-bouquet{opacity:0;translate:-16px 10px}
@container(max-width:620px){.theme-blue .hero{min-height:650px;padding:130px 26px 170px}.theme-blue .hero h1{font-size:48px}.hero:after{inset:16px}.theme-blue #music-toggle{right:26px;top:28px}.cover-tools{bottom:30px;left:25px;right:25px;gap:8px}.theme-blue .program{margin:0 12px;padding:70px 26px 52px;border-radius:120px 120px 0 0}.theme-blue .invitation-rsvp{padding:68px 24px 48px;border-radius:100px 100px 0 0;margin:0 10px}.blue-bouquet{width:300px}.theme-blue .hero .eyebrow{letter-spacing:.08em}}@media(prefers-reduced-motion:reduce){.blue-bouquet{transition:none!important;opacity:1!important;translate:none!important}}

.theme-blue .palette span:before{margin-bottom:0}
.blue-envelope{display:block;width:100%;height:auto;pointer-events:none;filter:drop-shadow(0 12px 18px #29445c12);transition:opacity .9s ease,translate .9s ease}.scene.reveal-ready:not(.visible) .blue-envelope{opacity:0;translate:-14px 8px}@container(max-width:620px){.blue-envelope{width:280px;max-width:95%;margin:0 auto 32px}}@media(prefers-reduced-motion:reduce){.blue-envelope{transition:none!important;opacity:1!important;translate:none!important}}
#demo-cover-note{flex-basis:100%;font-size:16px;color:#fff;text-align:center;text-shadow:0 1px 5px #153345}.theme-blue .blue-candles{width:200px;max-width:70%;height:auto;margin:0 auto 28px;pointer-events:none}.theme-blue .blue-rings{width:280px;max-width:85%;height:auto;margin:0 auto 34px;pointer-events:none}.theme-blue .closing:before{display:none}.theme-blue .venue:before{content:'';position:absolute;inset:26px 5%;border:1px solid #afc7d566;border-radius:180px 180px 8px 8px;pointer-events:none;z-index:-1}.theme-blue .outfit:before{content:'';display:block;width:95px;height:22px;margin:0 auto 28px;border-top:1px solid #9db8cc;border-bottom:1px solid #c4d9e7;border-radius:50%;transform:rotate(-8deg)}.theme-blue .gallery-section h2:after{content:'';display:block;width:64px;height:1px;background:#8eacc2;box-shadow:24px 5px 0 #c4d7e5;margin:24px auto 0}.theme-blue .invitation-rsvp .copy:before{content:'♡';display:block;font:42px/1 Georgia;color:#779cb8;margin:0 auto 25px}.theme-blue .program{padding-top:54px}.blue-candles,.blue-rings{transition:opacity .9s ease,translate .9s ease}.scene.reveal-ready:not(.visible)>.blue-candles,.scene.reveal-ready:not(.visible)>.blue-rings{opacity:0;translate:0 16px}@container(max-width:620px){.theme-blue .blue-candles{width:180px}.theme-blue .blue-rings{width:250px}.theme-blue .program{padding-top:40px}.theme-blue .venue:before{inset:20px 12px}.theme-blue .hero{padding-bottom:190px}}@media(prefers-reduced-motion:reduce){.blue-candles,.blue-rings{transition:none!important;opacity:1!important;translate:none!important}}
/* Fine outlines keep the light palette swatches distinct from the paper. */
.theme-blue .palette span:before{outline:1px solid #91aabd;outline-offset:3px}
.theme-blue .venue .section-number{border-bottom:0}
.theme-blue .outfit:before{display:none}.blue-butterfly{display:block;width:150px;max-width:45%;height:auto;margin:0 auto 28px;pointer-events:none}.blue-candles{display:block;overflow:visible}.blue-flame{animation:blue-flame-sway 2.8s ease-in-out infinite alternate}.blue-flame.flame-1{animation-duration:3.3s;animation-delay:-1.6s}@keyframes blue-flame-sway{0%,100%{transform:rotate(-3deg) scaleX(.92);opacity:.94}35%{transform:rotate(2deg) scaleY(1.04);opacity:1}70%{transform:rotate(-1deg) scaleX(1.05);opacity:.97}}@media(prefers-reduced-motion:reduce){.blue-flame{animation:none!important;transform:none;opacity:1}}
/* Separate wing surfaces hinge along the butterfly's diagonal body. */
.flutterting-butterfly,.fluttering-butterfly{overflow:visible}.butterfly-wing{transform-origin:240px 240px;animation:blue-wing-beat 2.1s ease-in-out infinite}.wing-right{animation-name:blue-wing-beat-right}@keyframes blue-wing-beat{0%,100%{transform:rotate3d(.5,-.866,0,0deg)}45%{transform:rotate3d(.5,-.866,0,48deg)}65%{transform:rotate3d(.5,-.866,0,16deg)}}@keyframes blue-wing-beat-right{0%,100%{transform:rotate3d(.5,-.866,0,0deg)}45%{transform:rotate3d(.5,-.866,0,-48deg)}65%{transform:rotate3d(.5,-.866,0,-16deg)}}
.flying-butterflies{position:absolute;inset:0;z-index:5;pointer-events:none;overflow:hidden;contain:strict}.flying-butterfly{position:absolute;width:56px;height:auto;opacity:.8;pointer-events:none}.flying-butterfly img{width:100%;height:auto;animation:small-wing-beat 1.7s ease-in-out infinite;filter:drop-shadow(0 3px 3px #46658018)}.flight-a{animation:blue-flight-a 95s ease-in-out -20s infinite}.flight-b{width:46px;animation:blue-flight-b 110s ease-in-out -65s infinite}.flight-c{width:50px;animation:blue-flight-c 125s ease-in-out -90s infinite}.flight-b img{animation-duration:1.9s}.flight-c img{animation-duration:2.3s}@keyframes small-wing-beat{0%,100%{transform:perspective(220px) rotateY(-15deg) rotate(-7deg)}50%{transform:perspective(220px) rotateY(55deg) rotate(8deg)}}
@keyframes blue-flight-a{0%,100%{left:4%;top:10%;rotate:-20deg}30%{left:82%;top:35%;rotate:22deg}65%{left:8%;top:67%;rotate:-15deg}85%{left:75%;top:87%;rotate:18deg}}@keyframes blue-flight-b{0%,100%{left:85%;top:90%;rotate:15deg}35%{left:8%;top:58%;rotate:-25deg}70%{left:78%;top:20%;rotate:20deg}}@keyframes blue-flight-c{0%,100%{left:10%;top:80%;rotate:-10deg}40%{left:80%;top:47%;rotate:15deg}75%{left:4%;top:14%;rotate:-22deg}}
@media(max-width:760px){.flying-butterfly{width:40px}.flight-b{width:34px}.flight-c{width:37px}}.butterflies-paused .flying-butterfly,.butterflies-paused .flying-butterfly img,.butterflies-paused .butterfly-wing{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.flying-butterflies{display:none}.butterfly-wing{animation:none!important;transform:none!important}}
/* Curved flight is driven by transforms; the wings keep their own rhythm. */
.flying-butterfly{left:0;top:0;rotate:none;animation:none;width:70px;will-change:transform}.flight-b{width:58px}.flight-c{width:63px}.flying-butterfly img{animation-duration:1.25s}.flight-b img{animation-duration:1.45s}.flight-c img{animation-duration:1.65s}@media(max-width:760px){.flying-butterfly{width:50px}.flight-b{width:43px}.flight-c{width:47px}}
