@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Playfair+Display:ital,wght@0,400;0,700;1,400&family=Montserrat:wght@300;400;600&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.hero{text-align:center;margin-bottom:60px;padding-top:40px;position:relative;perspective:1000px}.hero-content{position:relative;display:inline-block}.hero-image-wrapper{position:relative;display:inline-block;transform-style:preserve-3d;transition:transform .1s ease-out}.hero-image{width:100%;max-width:600px;height:auto;border-radius:30px;border:1px solid rgba(201,169,97,.3);box-shadow:0 20px 60px #0009,0 0 60px #c9a96133,inset 0 0 40px #c9a9610d;position:relative;z-index:2;transition:all .4s ease;backface-visibility:hidden}.image-glow{position:absolute;inset:-20px;background:radial-gradient(circle at center,rgba(201,169,97,.4) 0%,rgba(201,169,97,.2) 40%,transparent 70%);border-radius:40px;z-index:1;pointer-events:none;filter:blur(20px)}.floating-particle{position:absolute;width:8px;height:8px;background:radial-gradient(circle,#f4e5a5,#c9a961);border-radius:50%;pointer-events:none;filter:blur(2px);box-shadow:0 0 10px #c9a96199}.hero-decoration{margin-top:40px}.decorative-flourish{width:200px;height:40px;filter:drop-shadow(0 0 8px rgba(201,169,97,.5))}@media (max-width: 768px){.hero{padding-top:20px}.hero-image{max-width:90vw;border-radius:20px}.decorative-flourish{width:150px;height:30px}}.countdown-section{margin:60px 0;padding:40px 20px}.countdown-container{display:flex;justify-content:center;align-items:center;gap:30px;flex-wrap:wrap}.countdown-box{display:flex;flex-direction:column;align-items:center;padding:30px 35px;background:#c9a9610d;border:1px solid rgba(201,169,97,.3);border-radius:20px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);min-width:120px;position:relative;overflow:hidden;cursor:pointer;transform-style:preserve-3d;transition:all .3s ease}.countdown-box:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(201,169,97,.1),transparent);opacity:0;transition:opacity .3s}.countdown-box:hover:before{opacity:1}.countdown-number-wrapper{height:60px;display:flex;align-items:center;justify-content:center;perspective:100px}.countdown-number{font-family:Cinzel,serif;font-size:3.5rem;font-weight:700;background:linear-gradient(135deg,#f4e5a5,#c9a961,#a68b4a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;letter-spacing:-2px;display:block}.countdown-label{font-family:Cinzel,serif;font-size:.95rem;color:#c9a961;margin-top:12px;font-weight:400;letter-spacing:2px;text-transform:uppercase}.countdown-glow{position:absolute;inset:-10px;background:radial-gradient(circle at center,rgba(201,169,97,.3) 0%,transparent 70%);border-radius:30px;z-index:-1;pointer-events:none}@media (max-width: 768px){.countdown-container{gap:20px}.countdown-box{padding:25px 30px;min-width:100px}.countdown-number{font-size:2.8rem}.countdown-label{font-size:.8rem}}@media (max-width: 480px){.countdown-box{padding:20px 25px;min-width:85px}.countdown-number{font-size:2.2rem}.countdown-label{font-size:.7rem;letter-spacing:1px}}.event-info{text-align:center;margin:80px 0;padding:60px 20px;position:relative}.event-info:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:200px;height:1px;background:linear-gradient(90deg,transparent,#c9a961,transparent)}.theme-title{font-family:Cinzel,serif;font-size:3.5rem;font-weight:700;background:linear-gradient(135deg,#f4e5a5,#c9a961,#a68b4a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:12px;margin-bottom:60px;position:relative;display:inline-block;text-shadow:none}.date-time{display:flex;justify-content:center;align-items:center;gap:60px;margin-top:50px;perspective:1000px}.date-box,.time-box{display:flex;flex-direction:column;align-items:center;padding:35px 45px;background:#c9a9610a;border:1px solid rgba(201,169,97,.25);border-radius:20px;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);transition:all .3s ease;transform-style:preserve-3d;cursor:pointer}.date-box:hover,.time-box:hover{background:#c9a96114;border-color:#c9a96166;box-shadow:0 15px 40px #c9a96126}.number{font-family:Cinzel,serif;font-size:5.5rem;font-weight:700;background:linear-gradient(135deg,#f4e5a5,#c9a961);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;letter-spacing:-2px}.label{font-family:Cinzel,serif;font-size:1.8rem;color:#c9a961;margin-top:10px;font-weight:400;letter-spacing:4px;text-transform:uppercase}.divider{height:120px;display:flex;align-items:center;justify-content:center}.divider-line{width:1px;height:100%;background:linear-gradient(180deg,transparent,#c9a961,transparent)}@media (max-width: 768px){.theme-title{font-size:2.5rem;letter-spacing:6px}.date-time{gap:30px}.date-box,.time-box{padding:25px 35px}.number{font-size:4rem}.label{font-size:1.4rem;letter-spacing:2px}.divider{height:100px}}@media (max-width: 480px){.theme-title{font-size:2rem;letter-spacing:4px}.date-box,.time-box{padding:20px 25px}.number{font-size:3rem}.label{font-size:1.2rem}}.cta-section{margin:100px 0;padding:60px 20px}.cta-title{font-family:Cinzel,serif;font-size:1.4rem;text-align:center;color:#c9a961;margin-bottom:60px;letter-spacing:3px;text-transform:uppercase;font-weight:400;position:relative;display:inline-block;width:100%}.cta-title:after{content:"";position:absolute;bottom:-15px;left:50%;transform:translate(-50%);width:80px;height:1px;background:linear-gradient(90deg,transparent,#c9a961,transparent)}.cta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:40px;max-width:1100px;margin:0 auto}.cta-item{display:flex;flex-direction:column;align-items:center;gap:20px;cursor:pointer;padding:40px 20px;border-radius:20px;background:#c9a96105;border:1px solid rgba(201,169,97,.2);position:relative;overflow:hidden;transition:all .4s ease}.cta-item:hover{background:#c9a9610f;border-color:#c9a96166;box-shadow:0 20px 50px #c9a96126}.cta-icon{width:90px;height:90px;border:2px solid rgba(201,169,97,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;background:#c9a9610a;position:relative;transition:all .4s ease}.cta-item:hover .cta-icon{background:#c9a9611a;border-color:#c9a961;box-shadow:0 0 40px #c9a96166}.cta-icon svg{width:40px;height:40px;color:#c9a961;transition:all .4s;z-index:2;position:relative}.cta-item:hover .cta-icon svg{color:#f4e5a5;transform:scale(1.1)}.icon-glow{position:absolute;inset:0;background:radial-gradient(circle,rgba(201,169,97,.3),transparent 70%);border-radius:50%;z-index:1;pointer-events:none}.cta-text{font-family:Cinzel,serif;font-size:1.05rem;text-align:center;line-height:1.5;letter-spacing:1px;color:#e6d5a0;font-weight:400}.cta-ripple{position:absolute;inset:0;background:radial-gradient(circle,rgba(201,169,97,.2),transparent);border-radius:20px;pointer-events:none}@media (max-width: 768px){.cta-grid{grid-template-columns:repeat(2,1fr);gap:25px}.cta-item{padding:30px 15px}.cta-icon{width:75px;height:75px}.cta-icon svg{width:35px;height:35px}.cta-text{font-size:.95rem}}@media (max-width: 480px){.cta-item{padding:25px 10px}.cta-icon{width:65px;height:65px}.cta-icon svg{width:30px;height:30px}.cta-text{font-size:.9rem}}.gallery-container{width:100%}.gallery-container h2{margin-bottom:30px}.gallery-tabs{display:flex;gap:15px;justify-content:center;margin-bottom:35px}.tab-button{padding:12px 25px;background:#c9a9611a;border:1px solid rgba(201,169,97,.3);border-radius:10px;color:#c9a961;font-family:Cinzel,serif;font-size:.95rem;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:8px}.tab-button.active{background:linear-gradient(135deg,#c9a961,#a68b4a);color:#0d0507;border-color:#c9a961}.tab-button:hover:not(.active){background:#c9a96126;border-color:#c9a961}.upload-section,.gallery-view-section{margin-top:25px}.upload-description,.gallery-info{text-align:center;margin-bottom:25px;color:#e6d5a0;font-size:1.05rem}.upload-form{display:flex;flex-direction:column;gap:20px;max-width:500px;margin:0 auto}.upload-form textarea{width:100%;padding:14px 16px;border:1px solid rgba(201,169,97,.3);border-radius:10px;background-color:#c9a96108;color:#fff;font-size:1rem;font-family:Montserrat,sans-serif;resize:vertical;transition:all .3s}.upload-form textarea:focus{outline:none;background-color:#c9a96114;border-color:#c9a961;box-shadow:0 0 20px #c9a96126}.file-input-wrapper{position:relative}.file-input-wrapper input[type=file]{position:absolute;opacity:0;width:0;height:0}.file-input-label{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 16px;border:2px dashed rgba(201,169,97,.3);border-radius:10px;background-color:#c9a96108;color:#c9a961;font-size:1rem;cursor:pointer;transition:all .3s}.file-input-label:hover{border-color:#c9a961;background-color:#c9a96114}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin-top:30px}.coming-soon{grid-column:1 / -1;text-align:center;padding:60px 20px;color:#c9a96180}.coming-soon p{margin-top:15px;font-size:1.1rem}.small-text{font-size:.9rem!important;margin-top:5px!important}.loading{grid-column:1 / -1;text-align:center;padding:40px;color:#c9a961;font-size:1.1rem}.gallery-item{background:#c9a9610d;border:1px solid rgba(201,169,97,.2);border-radius:12px;overflow:hidden;transition:all .3s}.gallery-item:hover{border-color:#c9a96166;box-shadow:0 10px 30px #c9a96126}.media-wrapper{width:100%;aspect-ratio:1;overflow:hidden;background:#0000004d}.media-wrapper img,.media-wrapper video{width:100%;height:100%;object-fit:cover}.item-info{padding:15px}.item-author{font-weight:600;color:#c9a961;margin-bottom:8px;font-size:.95rem}.item-message{color:#e6d5a0;font-size:.9rem;margin-bottom:8px;font-style:italic;line-height:1.4}.item-date{color:#c9a96199;font-size:.8rem}@media (max-width: 768px){.gallery-tabs{flex-direction:column;align-items:center}.tab-button{width:100%;max-width:300px;justify-content:center}.upload-form{max-width:100%}.gallery-grid{grid-template-columns:1fr}}.modal-overlay{position:fixed;inset:0;background-color:#000000eb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:linear-gradient(135deg,#1a0a0f,#0d0507);padding:50px;border:1px solid rgba(201,169,97,.3);border-radius:20px;width:100%;max-width:550px;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 25px 80px #000000e6,0 0 60px #c9a96126}.modal-close{position:absolute;top:25px;right:25px;background:#c9a9611a;border:1px solid rgba(201,169,97,.3);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#c9a961;font-size:24px;transition:all .3s}.modal-close:hover{background:#c9a96133;border-color:#c9a961;color:#f4e5a5}.modal-content h2{font-family:Cinzel,serif;color:#c9a961;text-align:center;margin-bottom:35px;font-size:2.2rem;font-weight:600;letter-spacing:2px}.modal-content h3{font-family:Cinzel,serif;color:#c9a961;margin:25px 0 15px;font-size:1.5rem;letter-spacing:1px}.modal-content-section{text-align:center;line-height:1.9;color:#f8f8f8}.intro-text{margin-bottom:25px;font-size:1.05rem}.intercambio-text{margin:30px 0 15px;font-size:1.1rem}.modal-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:10px}.form-group label{color:#e6d5a0;font-weight:500;font-size:.95rem;letter-spacing:.5px}.form-group input{width:100%;padding:14px 16px;border:1px solid rgba(201,169,97,.3);border-radius:10px;background-color:#c9a96108;color:#fff;font-size:1rem;transition:all .3s;font-family:Montserrat,sans-serif}.form-group input:focus{outline:none;background-color:#c9a96114;border-color:#c9a961;box-shadow:0 0 20px #c9a96126}.btn-submit{width:100%;padding:16px;background:linear-gradient(135deg,#c9a961,#a68b4a);color:#0d0507;border:none;border-radius:10px;font-size:1.1rem;font-weight:700;font-family:Cinzel,serif;cursor:pointer;transition:all .3s;margin-top:15px;letter-spacing:2px;text-transform:uppercase}.btn-submit:hover{background:linear-gradient(135deg,#e6d5a0,#c9a961);box-shadow:0 8px 30px #c9a96166}.mensagem-sucesso{background-color:#4caf5026;border:1px solid rgba(76,175,80,.5);border-radius:12px;padding:30px;text-align:center}.mensagem-sucesso p{color:#4caf50;font-weight:600;font-size:1.1rem}.presentes-list,.trajes-list{list-style:none;padding:0;text-align:left;max-width:450px;margin:0 auto 30px}.presentes-list li,.trajes-list li{padding:12px 20px;border-bottom:1px solid rgba(201,169,97,.2);transition:all .3s}.presentes-list li:hover,.trajes-list li:hover{background:#c9a9610d;padding-left:30px}.pix-info{background-color:#c9a96114;padding:25px;border-radius:12px;border:1px solid rgba(201,169,97,.3);margin:25px 0;font-size:1.1rem}.loja-indicacao{margin:30px 0;padding:25px;background:#c9a96114;border:1px solid rgba(201,169,97,.3);border-radius:12px}.loja-indicacao a{color:#c9a961;text-decoration:none;transition:color .3s}.loja-indicacao a:hover{color:#f4e5a5}@media (max-width: 768px){.modal-content{padding:35px 25px;max-width:95%}.modal-content h2{font-size:1.8rem}.modal-close{width:35px;height:35px;font-size:20px}}.music-player{position:fixed;bottom:30px;right:30px;z-index:999}.music-toggle{width:65px;height:65px;border-radius:50%;background:linear-gradient(135deg,#c9a961,#a68b4a);border:2px solid rgba(201,169,97,.5);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 6px 25px #c9a96166;position:relative;overflow:visible}.music-toggle:before{content:"";position:absolute;inset:-3px;border-radius:50%;background:linear-gradient(135deg,#f4e5a5,transparent,#c9a961);opacity:0;transition:opacity .3s;z-index:-1}.music-toggle:hover:before{opacity:.4}.music-toggle:hover{box-shadow:0 8px 35px #c9a96199}.music-toggle svg{width:30px;height:30px;color:#0d0507;position:relative;z-index:2}.music-toggle.playing{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 6px 25px #c9a96166}50%{box-shadow:0 6px 35px #c9a961b3,0 0 25px #c9a96166}}.sound-waves{position:absolute;bottom:-12px;left:50%;transform:translate(-50%);display:flex;gap:3px;align-items:flex-end;height:8px}.wave{width:3px;height:100%;background:#c9a961;border-radius:2px}@media (max-width: 768px){.music-player{bottom:20px;right:20px}.music-toggle{width:55px;height:55px}.music-toggle svg{width:26px;height:26px}}@media (max-width: 480px){.music-player{bottom:15px;right:15px}.music-toggle{width:50px;height:50px}.music-toggle svg{width:24px;height:24px}}.particles-container{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden}.particle{position:absolute;background:radial-gradient(circle,#f4e5a5,#c9a961);border-radius:50%;filter:blur(1px);box-shadow:0 0 10px #c9a96180}.ornament{position:fixed;width:250px;height:250px;opacity:.15;pointer-events:none;z-index:1}.ornament svg{width:100%;height:100%}.ornament-top-left{top:0;left:0}.ornament-top-right{top:0;right:0}.ornament-bottom-left{bottom:0;left:0}.ornament-bottom-right{bottom:0;right:0}@media (max-width: 768px){.ornament{width:150px;height:150px}}:root{--burgundy: #1a0a0f;--burgundy-dark: #0d0507;--burgundy-light: #2d1419;--gold: #c9a961;--gold-light: #e6d5a0;--gold-dark: #a68b4a;--white: #ffffff;--text-light: #f8f8f8;--accent: #8b7355}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Montserrat,sans-serif;background:#0d0507;color:var(--text-light);min-height:100vh;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 50%,rgba(201,169,97,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(139,115,85,.05) 0%,transparent 50%),linear-gradient(180deg,#0d0507,#1a0a0f,#0d0507);z-index:0;pointer-events:none}.app{position:relative;min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:60px 20px;position:relative;z-index:2}.invitation-text{text-align:center;font-size:1.3rem;line-height:2;margin:60px auto;padding:0 40px;max-width:800px;letter-spacing:.5px;position:relative}.invitation-text:before,.invitation-text:after{content:"";position:absolute;left:50%;transform:translate(-50%);width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.invitation-text:before{top:-20px}.invitation-text:after{bottom:-20px}.invitation-text p{margin:15px 0;color:var(--gold-light);font-weight:300}.monogram{font-family:Cinzel,serif;font-size:5rem;font-weight:700;letter-spacing:8px;background:linear-gradient(135deg,#f4e5a5,#c9a961,#a68b4a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-align:center;margin:100px auto 60px;padding:60px;position:relative;display:inline-block;width:100%}.monogram:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(201,169,97,.1) 0%,transparent 70%);animation:shimmer 3s ease-in-out infinite;pointer-events:none}@keyframes shimmer{0%,to{opacity:.3}50%{opacity:.7}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#0d0507}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#c9a961,#a68b4a);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#e6d5a0,#c9a961)}@media (max-width: 768px){.container{padding:40px 15px}.invitation-text{font-size:1.1rem;padding:0 20px}.monogram{font-size:3.5rem;padding:40px}}@media (max-width: 480px){.invitation-text{font-size:1rem}.monogram{font-size:2.5rem;padding:30px;letter-spacing:4px}}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;font-family:Cinzel,serif;color:var(--gold);font-size:1.5rem}
