:root{--text-pink: #9A4A5C;--font-serif: "Playfair Display", serif;--font-script: "Great Vibes", cursive}body{margin:0;padding:0;font-family:var(--font-serif);color:var(--text-pink);overflow-x:hidden;background-color:#fdf5f6}.invitation-wrapper{position:relative;min-height:100vh;width:100%;background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 10c5 0 5 10 10 10s5-10 10-10' fill='none' stroke='%239A4A5C' stroke-opacity='0.03'/%3E%3Cpath d='M30 40c2 0 2 4 4 4s2-4 4-4' fill='none' stroke='%239A4A5C' stroke-opacity='0.03'/%3E%3C/svg%3E");background-size:150px;background-repeat:repeat;background-attachment:fixed;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow:hidden}.invitation-wrapper:before{content:"";position:absolute;inset:0;background:#ffffff80;z-index:0}.intro-screen{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#fffffff2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:opacity 1.2s cubic-bezier(.4,0,.2,1),transform 1.2s cubic-bezier(.4,0,.2,1),visibility 1.2s;cursor:pointer}.intro-screen.fade-out{opacity:0;visibility:hidden;transform:scale(1.3)}.vintage-frame{width:85%;max-width:380px;height:520px;background:#fff;border:1px solid #d4af37;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 30px 60px #9a4a5c1a;animation:floating 4s ease-in-out infinite}.vintage-frame:after{content:"";position:absolute;inset:15px;border:2px solid #d4af37;pointer-events:none}.vintage-frame:before{content:"🎀";position:absolute;top:-45px;font-size:5rem;z-index:2}.intro-name{font-family:var(--font-serif);font-size:3rem;margin:0;color:var(--text-pink);z-index:1}.intro-age{font-family:var(--font-script);font-size:2.5rem;margin:10px 0;color:var(--text-pink);z-index:1}.tap-indicator{position:absolute;bottom:50px;font-size:.8rem;letter-spacing:3px;color:#9a4a5c;text-transform:uppercase;animation:pulse 2s infinite}.main-content{position:relative;z-index:10;padding:80px 20px;width:100%;max-width:550px;text-align:center;opacity:0;visibility:hidden;transform:translateY(30px);transition:all 1.5s cubic-bezier(.19,1,.22,1)}.main-content.visible{opacity:1;visibility:visible;transform:translateY(0)}.title-container{position:relative;display:inline-block;margin-bottom:50px}.main-name{font-family:var(--font-script);font-size:6rem;margin:0;color:var(--text-pink);text-shadow:2px 2px 15px rgba(255,255,255,.9)}.message-box{margin:0 auto 40px}.main-message{font-size:1.25rem;line-height:2;font-weight:400;font-style:italic;color:#7a3a49}.event-date{font-size:2.8rem;font-weight:300;letter-spacing:8px;margin:40px 0;color:var(--text-pink);border-top:1px solid rgba(154,74,92,.15);border-bottom:1px solid rgba(154,74,92,.15);padding:20px 0}.details-section{background:#ffffffb3;padding:40px 20px;border-radius:30px;margin-bottom:50px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.5)}.venue-name{font-size:1.6rem;margin-bottom:15px;text-transform:uppercase;letter-spacing:3px}.butterfly{position:absolute;top:-20px;right:-60px;width:60px;height:60px;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M50 50 C20 -10, -10 20, 50 50 C110 20, 80 -10, 50 50 C20 110, -10 80, 50 50 C110 80, 80 110, 50 50' fill='%239A4A5C'/%3E%3Ccircle cx='50' cy='50' r='5' fill='%23d4af37'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;opacity:0;transform:translate(150px,-150px) rotate(45deg) scale(.4);transition:all 2.5s cubic-bezier(.25,1,.5,1)}.butterfly.fly-in{opacity:1;transform:translate(0) rotate(-10deg) scale(1.2)}.petals-container{position:fixed;inset:0;z-index:5;pointer-events:none;overflow:hidden}.petal{position:absolute;top:-10%;width:25px;height:25px;background:#fce4ec;border-radius:100% 0%;opacity:.6;animation:fall linear forwards;filter:blur(.5px)}@keyframes floating{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(1deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.95)}}@keyframes fall{0%{transform:translateY(0) rotate(0) translate(0);opacity:0}10%{opacity:.8}to{transform:translateY(115vh) rotate(720deg) translate(80px);opacity:0}}.form-section{width:100%}.form-section .response-section{background:#fff;padding:30px 20px;border-radius:25px;margin-bottom:30px;box-shadow:0 15px 35px #9a4a5c14;border:1px solid rgba(154,74,92,.1)}.form-section .btn-response{padding:12px 25px;border-radius:50px;font-weight:700;margin:8px;border:none;transition:all .3s ease;display:inline-block;text-decoration:none;font-family:var(--font-serif)}.form-section .btn-accept{background-color:var(--text-pink)!important;color:#fff!important}.form-section .btn-decline{background-color:#f8f8f8!important;color:#999!important}.owner-section{margin-top:30px;margin-bottom:50px;font-size:1.2rem}.owner-name{font-family:var(--font-script);font-size:2.5rem;color:var(--text-pink);display:block;margin-top:10px}.calendar-section{border-top:1px solid rgba(154,74,92,.1)!important;margin-top:25px!important}.calendar-section .btn-outline-gold{border:1.5px solid var(--text-pink)!important;color:var(--text-pink)!important;background:transparent!important;border-radius:50px!important;font-weight:600!important;transition:all .3s ease!important;padding:8px 18px!important;font-size:.85rem!important;font-family:var(--font-serif)}.calendar-section .btn-outline-gold:hover{background:var(--text-pink)!important;color:#fff!important}@media(max-width:480px){.main-name{font-size:4.5rem}.vintage-frame{height:460px}.butterfly{width:45px;height:45px;right:-30px}.owner-name{font-size:2rem}}
