.template-preview.wedding-garden-reveal{background:linear-gradient(145deg,#d8e1d3,#506e59);color:#fff9eb;border-radius:140px 140px 8px 8px}
.invitation.wedding-garden-reveal{background:#e5e9de;color:#1d3e31;border-radius:16px;max-width:720px;box-shadow:0 20px 55px #15382a18}
.invitation.wedding-garden-reveal,.invitation.wedding-garden-reveal *{text-shadow:none}
.wedding-reveal-intro{padding:0;animation:none;position:relative}
.wedding-garden-scene{height:270px;position:relative;overflow:hidden;background:radial-gradient(circle at 50% 125%,#f6efdc 0 24%,transparent 25%),linear-gradient(145deg,#cedacc,#698873 52%,#304f42)}
.wedding-garden-scene::before,.wedding-garden-scene::after{content:"";position:absolute;width:300px;height:340px;border:2px solid #e8ddbc80;border-radius:50%;top:-95px;left:-95px;transform:rotate(-30deg)}
.wedding-garden-scene::after{left:auto;right:-95px;transform:rotate(30deg)}
.wedding-garden-orbit{position:absolute;width:390px;height:150px;border-top:1px solid #f1e7cd90;border-radius:50%;bottom:8px;left:calc(50% - 195px)}
.wedding-garden-orbit.orbit-two{width:290px;left:calc(50% - 145px);bottom:-14px}
.wedding-garden-leaf{position:absolute;width:70px;height:28px;border-radius:100% 0 100% 0;background:linear-gradient(135deg,#e9e5c0,#8ca885);box-shadow:0 4px 14px #1e473333;animation:weddingLeaf 5.6s ease-in-out infinite alternate}
.wedding-garden-leaf.leaf-one{top:55px;left:12%;transform:rotate(-28deg)}
.wedding-garden-leaf.leaf-two{top:115px;right:9%;transform:rotate(145deg);animation-delay:-1.6s}
.wedding-garden-leaf.leaf-three{bottom:22px;left:20%;transform:rotate(48deg);animation-delay:-2.7s}
.wedding-garden-leaf.leaf-four{top:22px;right:24%;transform:rotate(-55deg);animation-delay:-3.8s}
.wedding-garden-rings{position:absolute;left:50%;top:96px;transform:translateX(-50%);width:110px;height:60px;animation:weddingRings 1.2s ease-out both}
.wedding-garden-rings span{position:absolute;width:54px;height:54px;border:6px solid #e6c77f;border-radius:50%;box-shadow:0 2px 9px #152d24a0,inset 0 1px 4px #fff9;top:0;left:13px}
.wedding-garden-rings span+span{left:42px;border-color:#f3e2a6}
.wedding-garden-monogram{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);font:400 2rem Georgia,serif;color:#fff8e5;letter-spacing:.12em;text-shadow:0 3px 12px #173e31}
.wedding-garden-monogram span{font-size:.65rem;vertical-align:middle;margin:0 7px;color:#e9d298}
.wedding-garden-card{position:relative;margin:-24px 34px 36px;padding:36px 36px 40px;background:#fffcf3;border:1px solid #caa968;outline:5px solid #fffcf3;box-shadow:0 14px 24px #18372a27;animation:weddingCard 1s .5s ease both}
.wedding-garden-card h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(2.5rem,7vw,4.5rem);font-weight:400;color:#163d31;margin:8px auto 16px;line-height:1.1;letter-spacing:-.025em}
.wedding-garden-card .eyebrow{font-family:Arial,Helvetica,sans-serif!important;font-size:.72rem;font-weight:700;color:#315b4b;letter-spacing:.12em;margin:0}
.wedding-garden-card .invitation-message{font-family:Arial,Helvetica,sans-serif!important;font-size:1.05rem;font-weight:400;color:#304d42;margin:18px auto;line-height:1.65}
.wedding-garden-divider{display:block;color:#b98d50;margin:17px auto;font-size:1.25rem}
.wedding-garden-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #d7c49f;border-bottom:1px solid #d7c49f;margin:0 auto 19px;max-width:520px;text-align:center}
.wedding-garden-facts>div{padding:12px 9px}
.wedding-garden-facts>div+div{border-left:1px solid #d7c49f}
.wedding-garden-facts span{display:block;font-family:Arial,Helvetica,sans-serif;color:#315b4b;font-size:.68rem;font-weight:700;letter-spacing:.12em}
.wedding-garden-facts strong{display:block;font-family:Arial,Helvetica,sans-serif;font-size:.92rem;font-weight:600;color:#163d31;line-height:1.45}
.wedding-garden-card .button{font-family:Arial,Helvetica,sans-serif;background:#1d5948;border-color:#1d5948;min-height:44px;margin:3px auto 10px}
.wedding-garden-controls{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.wedding-garden-controls .text-button{margin:0;color:#285543}
.wedding-garden-reveal.no-motion *, .wedding-garden-reveal.no-motion *::before,.wedding-garden-reveal.no-motion *::after{animation:none!important}
@keyframes weddingLeaf{from{translate:0 0;opacity:.8}to{translate:8px -13px;opacity:1}}
@keyframes weddingRings{from{opacity:0;scale:.6;translate:0 35px}to{opacity:1;scale:1;translate:0 0}}
@keyframes weddingCard{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.invitation.wedding-garden-reveal{border-radius:0}.wedding-garden-scene{height:220px}.wedding-garden-card{margin:-18px 19px 24px;padding:31px 19px 25px}.wedding-garden-facts{grid-template-columns:1fr}.wedding-garden-facts>div+div{border-left:0;border-top:1px solid #d7c49f}}
@media(prefers-reduced-motion:reduce){.wedding-garden-reveal *,.wedding-garden-reveal *::before,.wedding-garden-reveal *::after{animation:none!important}}

.template-preview.wedding-botanical-envelope{background:linear-gradient(145deg,#f5ebd7,#d3d9c7);color:#3d5545}
.invitation.wedding-botanical-envelope{background:#f3eee1;color:#324c3d;border-radius:14px;max-width:760px;box-shadow:0 20px 55px #293b2d1c}
.invitation.wedding-botanical-envelope,.invitation.wedding-botanical-envelope *{text-shadow:none}
.wedding-envelope-intro{position:relative;padding:0 0 8px;overflow:hidden}
.wedding-envelope-hero{position:relative;aspect-ratio:3/2;overflow:hidden;background:#eee6d5}
.wedding-envelope-hero img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.wedding-envelope-open{opacity:1}
.wedding-envelope-closed{opacity:0}
.wedding-envelope-card{position:absolute;z-index:1;top:9%;left:26%;width:48%;height:62%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:safe center;gap:7px;padding:4px 8px;overflow:auto;scrollbar-width:thin;text-align:center;background:transparent;border:0;outline:0;box-shadow:none;color:#334c3d}
.wedding-envelope-card h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(1.7rem,5vw,2.5rem);font-weight:400;color:#334c3d;margin:0;line-height:1.02;letter-spacing:-.025em;overflow-wrap:anywhere}
.wedding-envelope-card .eyebrow{font-family:Arial,Helvetica,sans-serif!important;font-size:.63rem;font-weight:700;color:#516a58;letter-spacing:.15em;margin:0}
.wedding-envelope-card .invitation-message{font-family:Arial,Helvetica,sans-serif!important;font-size:.83rem;font-weight:400;color:#405848;margin:2px auto;line-height:1.35;max-width:100%;overflow-wrap:anywhere}
.wedding-envelope-rule{height:1px;width:55%;background:#c2a36d;margin:3px auto}
.wedding-envelope-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #d8c5a3;border-bottom:1px solid #d8c5a3;margin:0 auto 3px;width:100%;text-align:center}
.wedding-envelope-facts>div{padding:6px 5px}.wedding-envelope-facts>div+div{border-left:1px solid #d8c5a3}
.wedding-envelope-facts span{display:block;font-family:Arial,Helvetica,sans-serif;color:#617660;font-size:.6rem;font-weight:700;letter-spacing:.1em}.wedding-envelope-facts strong{display:block;font-family:Arial,Helvetica,sans-serif;font-size:.73rem;font-weight:600;color:#334c3d;line-height:1.25;overflow-wrap:anywhere}
.wedding-envelope-card .button{font-family:Arial,Helvetica,sans-serif;font-size:.78rem;background:#315f4a;border-color:#315f4a;min-height:36px;margin:0;padding:8px 12px}.wedding-envelope-controls{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;padding:8px 12px 4px}.wedding-envelope-controls .text-button{margin:0;color:#315f4a}
.wedding-envelope-intro.is-playing .wedding-envelope-closed{animation:envelopeClose 1.25s .25s ease-in-out both}
.wedding-envelope-intro.is-playing .wedding-envelope-open{animation:envelopeOpen 1.25s .25s ease-in-out both}
.wedding-envelope-intro.is-playing .wedding-envelope-card{animation:envelopeCard 1s .95s cubic-bezier(.2,.8,.25,1) both}
@keyframes envelopeClose{0%,30%{opacity:1}100%{opacity:0}}
@keyframes envelopeOpen{0%,30%{opacity:0}100%{opacity:1}}
@keyframes envelopeCard{from{opacity:0;transform:translateY(75px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.invitation.wedding-botanical-envelope{border-radius:0}.wedding-envelope-hero{aspect-ratio:auto;height:370px}.wedding-envelope-hero img{object-position:center}.wedding-envelope-card{top:8%;left:11%;width:78%;height:68%;gap:5px}.wedding-envelope-card h1{font-size:clamp(1.55rem,7vw,2rem)}.wedding-envelope-card .invitation-message{font-size:.78rem}.wedding-envelope-facts strong{font-size:.68rem}.wedding-envelope-card .button{min-height:34px}}
@media(prefers-reduced-motion:reduce){.wedding-botanical-envelope *,.wedding-botanical-envelope *::before,.wedding-botanical-envelope *::after{animation:none!important}}
