@font-face{font-family:Cinzel;src:url(/fonts/cinzel-400.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Cinzel;src:url(/fonts/cinzel-600.ttf)format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-400.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-500.ttf)format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-italic-400.ttf)format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/fonts/cormorant-italic-500.ttf)format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Pinyon Script;src:url(/fonts/pinyon-400.ttf)format("truetype");font-weight:400;font-display:swap}:root,.theme-casamento{--font-title:"Cinzel", serif;--font-script:"Pinyon Script", cursive;--font-body:"Cormorant Garamond", Georgia, serif;--ivory:#1a2b4c;--ivory-deep:#0f1a2e;--ivory-card:#15223c;--gold:#d4af37;--gold-soft:#f3e5ab;--gold-deep:#e5c158;--ink:#fdfbf7;--ink-soft:#cbd5e1;--btn-bg:linear-gradient(135deg, #d4af37, #996515);--btn-color:#0f1a2e;--btn-border:#d4af37;--btn-shadow:#d4af3759}.theme-debutante{--ivory:#0d0e15;--ivory-deep:#161824;--ivory-card:#13141f;--gold:#ff2a6d;--gold-soft:#ff75a0;--gold-deep:#05d9e8;--ink:#fff;--ink-soft:#cbd5e1;--btn-bg:linear-gradient(135deg, #ff2a6d, #be123c);--btn-color:#fff;--btn-border:#ff2a6d;--btn-shadow:#ff2a6d66}.theme-aniversario{--ivory:#0f172a;--ivory-deep:#090d16;--ivory-card:#15223c;--gold:#38bdf8;--gold-soft:#7dd3fc;--gold-deep:#0284c7;--ink:#fff;--ink-soft:#cbd5e1;--btn-bg:linear-gradient(135deg, #0284c7, #0369a1);--btn-color:#fff;--btn-border:#38bdf8;--btn-shadow:#0284c766}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;overflow:hidden}body{font-family:var(--font-body,"Cormorant Garamond"), Georgia, serif;color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased}.stage{background:radial-gradient(120% 90% at 50% 32%, var(--ivory-card) 0%, var(--ivory) 38%, var(--ivory-deep) 72%, var(--gold-soft) 100%);position:fixed;inset:0}.stage canvas{position:absolute;inset:0}.grain{pointer-events:none;z-index:40;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");position:fixed;inset:0}.vignette{pointer-events:none;z-index:41;background:radial-gradient(120% 100% at 50% 42%,#0000 52%,#54412133 100%);position:fixed;inset:0}.loader{z-index:90;background:var(--ivory);flex-direction:column;justify-content:center;align-items:center;gap:18px;transition:opacity 1.1s;display:flex;position:fixed;inset:0}.loader.hidden{opacity:0;pointer-events:none}.loader .monogram{font-family:var(--font-script,"Pinyon Script"), cursive;color:var(--gold-deep);font-size:clamp(52px,9vw,84px);animation:2.4s ease-in-out infinite breathe}.loader .line{background:linear-gradient(90deg, transparent, var(--gold), transparent);width:120px;height:1px}@keyframes breathe{0%,to{opacity:.55}50%{opacity:1}}.hint{z-index:30;text-align:center;font-family:var(--font-body,"Cormorant Garamond"), serif;letter-spacing:.34em;text-indent:.34em;text-transform:uppercase;color:var(--gold-deep);pointer-events:none;padding:0 24px;font-size:clamp(13px,1.6vw,16px);transition:opacity .6s;animation:3.2s ease-in-out infinite hintpulse;position:fixed;bottom:max(7vh,44px);left:0;right:0}.hint.gone{animation:none;opacity:0!important}@keyframes hintpulse{0%,to{opacity:.45}50%{opacity:.95}}.mute{top:max(18px, env(safe-area-inset-top));z-index:70;border:1.5px solid var(--gold);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:44px;height:44px;color:var(--gold);cursor:pointer;background:#0f1a2ed9;border-radius:50%;justify-content:center;align-items:center;transition:transform .25s,background .25s,border-color .25s,color .25s;display:flex;position:fixed;right:18px;box-shadow:0 4px 14px #0000004d}.mute:hover{color:#fff;background:#0f1a2ef5;border-color:#fff;transform:scale(1.08)}.mute svg{width:20px;height:20px}.invitation{z-index:50;-webkit-overflow-scrolling:touch;opacity:0;pointer-events:none;background:0 0;transition:opacity .4s;position:fixed;inset:0;overflow-y:auto}.invitation.active{opacity:1;pointer-events:auto}.card-wrap{justify-content:center;align-items:flex-start;min-height:100%;padding:clamp(18px,4vh,56px) 16px clamp(40px,6vh,80px);display:flex}.card{background:radial-gradient(140% 90% at 50% 0%, var(--ivory-deep) 0%, var(--ivory-card) 55%, var(--ivory) 100%);opacity:0;width:min(600px,94vw);padding:clamp(34px,6vw,64px) clamp(22px,5vw,56px);transition:max-height 1.6s cubic-bezier(.22,.9,.3,1);position:relative;overflow:hidden;box-shadow:0 30px 80px -20px #503e1e59,0 6px 24px #503e1e1f}.invitation.active .card{animation:.45s 50ms forwards cardIn}@keyframes cardIn{to{opacity:1}}.card:before,.card:after{content:"";pointer-events:none;position:absolute}.card:before{border:1.5px solid #b08d46bf;inset:13px}.card:after{border:1px solid #b08d4661;inset:19px}.card-inner{text-align:center;position:relative}.corner{width:54px;height:54px;color:var(--gold);opacity:.85;z-index:1;position:absolute}.corner.tl{top:24px;left:24px}.corner.tr{top:24px;right:24px;transform:scaleX(-1)}.corner.bl{bottom:24px;left:24px;transform:scaleY(-1)}.corner.br{bottom:24px;right:24px;transform:scale(-1)}.seal-mark{border:1.5px solid var(--gold);outline-offset:4px;width:74px;height:74px;font-family:var(--font-title,"Cinzel"), serif;letter-spacing:.08em;color:var(--gold-deep);border-radius:50%;outline:1px solid #b08d4659;justify-content:center;align-items:center;margin:0 auto 20px;font-size:24px;display:flex}.eyebrow{letter-spacing:.32em;text-indent:.32em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:16px;font-size:clamp(13px,1.8vw,15px)}.names{font-family:var(--font-script,"Pinyon Script"), cursive;color:var(--gold-deep);margin:4px 0 14px;font-size:clamp(46px,9vw,72px);font-weight:400;line-height:1.1}.intro-line{color:var(--ink-soft);max-width:40ch;margin:0 auto 26px;font-size:clamp(17px,2.4vw,20px);font-style:italic;line-height:1.55}.date-block{font-family:var(--font-title,"Cinzel"), serif;letter-spacing:.18em;text-indent:.18em;color:var(--ink);margin-bottom:4px;font-size:clamp(24px,4.4vw,34px);font-weight:600}.date-sub{color:var(--ink-soft);margin-bottom:30px;font-size:clamp(16px,2.2vw,19px);font-style:italic}.venues{gap:22px;margin-bottom:30px;display:grid}.venue .v-label{font-family:var(--font-title,"Cinzel"), serif;letter-spacing:.26em;text-indent:.26em;color:var(--gold-deep);margin-bottom:6px;font-size:clamp(14px,1.9vw,16px)}.venue .v-time{margin-bottom:2px;font-size:clamp(17px,2.4vw,20px)}.venue .v-time strong{font-weight:500}.venue .v-place{color:var(--ink-soft);font-size:clamp(16px,2.2vw,19px);font-style:italic}.map-link{letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);border-bottom:1px solid #b08d4680;align-items:center;gap:6px;margin-top:7px;padding-bottom:2px;font-size:14px;text-decoration:none;transition:color .25s,border-color .25s;display:inline-flex}.map-link:hover{color:var(--ink);border-color:var(--ink)}.map-link svg{width:13px;height:13px}.divider{color:var(--gold);justify-content:center;align-items:center;gap:14px;margin:26px 0;display:flex}.divider .d-line{background:linear-gradient(90deg, transparent, var(--gold));width:min(90px,20vw);height:1px}.divider .d-line.right{background:linear-gradient(90deg, var(--gold), transparent)}.divider svg{flex:none;width:26px;height:26px}.countdown{justify-content:center;gap:clamp(14px,4vw,34px);margin-bottom:6px;display:flex}.cd-item{text-align:center;min-width:52px}.cd-num{font-family:var(--font-title,"Cinzel"), serif;color:var(--ink);font-variant-numeric:tabular-nums;font-size:clamp(26px,5vw,36px);font-weight:600}.cd-label{letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);margin-top:2px;font-size:12px}.rsvp-title{font-family:var(--font-title,"Cinzel"), serif;letter-spacing:.3em;text-indent:.3em;color:var(--ink);margin-bottom:6px;font-size:clamp(18px,2.8vw,22px)}.rsvp-deadline{color:var(--ink-soft);margin-bottom:24px;font-size:clamp(15px,2vw,17px);font-style:italic}.rsvp-form{text-align:left;gap:18px;max-width:430px;margin:0 auto;display:grid}.field label{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:7px;font-size:13px;display:block}.field input[type=text],.field input[type=tel],.field select,.field textarea{color:#fff;appearance:none;background:#0f1a2eb3;border:1px solid #d4af3766;border-radius:4px;outline:none;width:100%;padding:12px 14px;font-family:Cormorant Garamond,Georgia,serif;font-size:18px;transition:border-color .25s,box-shadow .25s,background .25s}.field textarea{resize:vertical;min-height:76px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);background:#0f1a2ee6;box-shadow:0 0 0 3px #d4af3740}.field ::placeholder{color:#cbd5e1a6;font-style:italic}.select-wrap{position:relative}.select-wrap:after{content:"";border-right:1.5px solid var(--gold-deep);border-bottom:1.5px solid var(--gold-deep);pointer-events:none;width:7px;height:7px;position:absolute;top:50%;right:15px;transform:translateY(-70%)rotate(45deg)}.attend-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.attend-option{position:relative}.attend-option input{opacity:0;cursor:pointer;position:absolute;inset:0}.attend-option span{text-align:center;color:#f1f5f9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:pointer;background:#0f1a2ea6;border:1px solid #ffffff40;border-radius:4px;justify-content:center;align-items:center;min-height:56px;padding:10px 14px;font-family:system-ui,-apple-system,sans-serif;font-size:15px;font-weight:500;line-height:1.35;transition:all .25s;display:flex}.attend-option:hover span{border-color:var(--gold);color:#fff;background:#0f1a2ed9}.attend-option input:checked+span{background:var(--btn-bg);border-color:var(--btn-border);color:var(--btn-color);box-shadow:0 4px 16px -2px var(--btn-shadow);text-shadow:0 1px 1px #0003;font-weight:700}.submit-btn{font-family:var(--font-title,"Cinzel"), serif;letter-spacing:.24em;text-indent:.24em;color:var(--btn-color);background:var(--btn-bg);border:1px solid var(--btn-border);cursor:pointer;box-shadow:0 8px 24px -4px var(--btn-shadow);border-radius:4px;margin-top:10px;padding:16px 20px;font-size:15px;font-weight:700;transition:transform .25s,box-shadow .25s,filter .25s}.submit-btn:hover{filter:brightness(1.1);box-shadow:0 14px 32px -4px var(--btn-shadow);transform:translateY(-2px)}.submit-btn:active{transform:translateY(0)}.success{padding:18px 0 6px;animation:.9s cubic-bezier(.19,1,.22,1) forwards cardIn}.success .s-check{border:1.5px solid var(--gold);width:64px;height:64px;color:var(--gold-deep);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;display:flex}.success .s-check svg{width:26px;height:26px}.success h3{font-family:var(--font-script,"Pinyon Script"), cursive;color:var(--gold-deep);margin-bottom:10px;font-size:clamp(30px,5vw,40px);font-weight:400}.success p{color:var(--ink-soft);max-width:36ch;margin:0 auto;font-size:18px;font-style:italic;line-height:1.55}.signature{margin-top:30px}.signature .s-with{color:var(--ink-soft);font-size:17px;font-style:italic}.signature .s-names{font-family:var(--font-script,"Pinyon Script"), cursive;color:var(--gold-deep);margin-top:2px;font-size:clamp(30px,5vw,40px)}@media (width<=430px){.corner{width:40px;height:40px}.corner.tl,.corner.tr{top:20px}.corner.tl,.corner.bl{left:20px}.corner.tr,.corner.br{right:20px}.corner.bl,.corner.br{bottom:20px}.attend-row{grid-template-columns:1fr}}.time-capsule-container{background-color:var(--theme-bg);min-height:100vh;color:var(--theme-text);flex-direction:column;align-items:center;padding:40px 20px;font-family:Cormorant Garamond,serif;display:flex;overflow-x:hidden}.capsule-header{text-align:center;z-index:10;margin-bottom:40px}.capsule-header h1{color:var(--theme-gold);margin-bottom:10px;font-family:Pinyon Script,cursive;font-size:3.5rem}.capsule-header p{opacity:.8;font-size:1.2rem;font-style:italic}.book-wrapper{perspective:1500px;z-index:10;justify-content:center;width:100%;max-width:900px;display:flex}.flip-book{box-shadow:0 20px 40px #0006}.page{color:#423a2c;background-color:#fbf5e8;overflow:hidden;box-shadow:inset 0 0 20px #0000000d}.page-content{flex-direction:column;height:100%;padding:30px;display:flex}.page-cover{background-color:var(--theme-gold);color:#fff;border:4px solid #fff3}.page-cover .page-content{text-align:center;justify-content:center;align-items:center}.page-cover h2{letter-spacing:2px;font-family:Cinzel,serif;font-size:2.5rem}.page-header{text-align:center;color:#8f6f2f;letter-spacing:2px;border-bottom:1px solid #8f6f2f4d;margin-bottom:20px;padding-bottom:10px;font-family:Cinzel,serif;font-size:1rem}.page-image{background-position:50%;background-size:cover;border:1px solid #e0d5bc;border-radius:4px;flex-grow:1;margin-bottom:20px;box-shadow:2px 4px 10px #0000001a}.page-text{text-align:center;min-height:60px;font-size:1.1rem;font-style:italic;line-height:1.5}.page-footer{text-align:center;color:#999;margin-top:10px;font-family:Cinzel,serif;font-size:.9rem}.vip-bonus-card{text-align:center;background:#d4af371f;border:1.5px dashed #d4af3799;border-radius:8px;margin-top:1.5rem;padding:1.1rem}.vip-bonus-title{letter-spacing:1.5px;color:#f6d365;margin-bottom:.4rem;font-family:Cinzel,serif;font-size:.8rem;font-weight:700}.vip-bonus-code{letter-spacing:2px;color:#fff;margin:.3rem 0;font-family:Cinzel,serif;font-size:1.1rem}.vip-bonus-code strong{color:#f6d365}.vip-bonus-desc{color:#e2e8f0;margin:0;font-family:system-ui,-apple-system,sans-serif;font-size:.88rem;line-height:1.4}.gifts-wrap{text-align:center;margin:2rem 0}.gifts-grid{flex-direction:column;gap:.95rem;margin-top:1.2rem;display:flex}.gift-card{text-align:left;background:#fffffff2;border:1.5px solid #d4af3759;border-radius:8px;justify-content:space-between;align-items:center;gap:1.2rem;padding:1rem 1.2rem;display:flex;box-shadow:0 4px 16px #0003}.gift-card-content{flex:1}.gift-card-title{color:#0f172a;margin:0;font-family:Cinzel,serif;font-size:.95rem;font-weight:700}.gift-card-desc{color:#475569;margin:.25rem 0;font-size:.84rem;line-height:1.35}.gift-card-price{color:#b45309;margin:.25rem 0 0;font-family:Cinzel,serif;font-size:1rem;font-weight:700}.gift-actions{flex-direction:column;align-items:stretch;gap:8px;min-width:175px;display:flex}.cakto-btn{color:#fff;text-align:center;letter-spacing:.02em;white-space:nowrap;background:linear-gradient(135deg,#059669,#047857);border:1px solid #ffffff40;border-radius:6px;justify-content:center;align-items:center;padding:.65rem 1rem;font-family:system-ui,-apple-system,sans-serif;font-size:.78rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 3px 10px #05966959}.cakto-btn:hover{filter:brightness(1.12);transform:translateY(-1px);box-shadow:0 5px 14px #05966973}.wpp-confirm-btn{color:#fff;letter-spacing:.02em;text-align:center;background:linear-gradient(135deg,#16a34a,#15803d);border:1px solid #ffffff40;border-radius:6px;justify-content:center;align-items:center;margin-top:16px;padding:14px 22px;font-family:system-ui,-apple-system,sans-serif;font-size:.88rem;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 16px #16a34a73}.wpp-confirm-btn:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 6px 20px #16a34a8c}.gift-card-btn,.pix-action-btn{color:#fff;letter-spacing:.02em;cursor:pointer;white-space:nowrap;text-align:center;background:#0f1a2e;border:1px solid #d4af3766;border-radius:6px;justify-content:center;align-items:center;padding:.65rem 1rem;font-family:system-ui,-apple-system,sans-serif;font-size:.78rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 2px 8px #00000040}.gift-card-btn:hover,.pix-action-btn:hover{color:#fff;background:#b45309;border-color:#d97706;transform:translateY(-1px)}.pix-single-box{background:#fffffff2;border:1.5px solid #d4af3759;border-radius:8px;flex-direction:column;align-items:center;gap:.7rem;margin-top:1rem;padding:1.4rem;display:flex;box-shadow:0 4px 16px #0003}.pix-key-title{color:#0f172a;margin:0;font-family:system-ui,-apple-system,sans-serif;font-size:.9rem;font-weight:600}.pix-key-display{color:#0f172a;word-break:break-all;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:4px;padding:.5rem 1rem;font-family:monospace;font-size:.9rem;font-weight:600}.viral-footer{text-align:center;border-top:1px solid #d4af3740;margin-top:2.5rem;padding-top:1.2rem}.viral-footer-link{letter-spacing:.02em;color:#fdfbf7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f1a2ee0;border:1px solid #d4af3799;border-radius:30px;justify-content:center;align-items:center;padding:.65rem 1.3rem;font-family:system-ui,-apple-system,sans-serif;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .25s;display:inline-flex;box-shadow:0 4px 14px #0000004d}.viral-footer-link:hover{color:#0f1a2e;background:#d4af37;border-color:#d4af37;transform:translateY(-1px);box-shadow:0 6px 18px #d4af3766}
