:root{--primary-color: #1a1a1a;--accent-color: #ffffff;--background-color: #0a0a0a;--envelope-color: #1a1a1a;--envelope-shadow: #000000;--flap-color-dark: #242424;--flap-highlight: #2a2a2a;--card-color: #1a1a1a;--envelope-width: 380px;--envelope-height: 240px;--gold-accent: #c9a55c;--gold-light: #d4af37;--text-primary: #ffffff;--text-secondary: #d1d1d1;--text-muted: #999999;--spotlight-color: #8b2f4a;--spotlight-light: #a84763}body{font-family:Playfair Display,serif;background:repeating-linear-gradient(45deg,transparent,transparent 50px,rgba(255,255,255,.015) 50px,rgba(255,255,255,.015) 51px),repeating-linear-gradient(-45deg,transparent,transparent 50px,rgba(255,255,255,.015) 50px,rgba(255,255,255,.015) 51px),repeating-linear-gradient(0deg,rgba(255,255,255,.01) 0px,transparent 1px,transparent 2px,rgba(255,255,255,.01) 3px),repeating-linear-gradient(90deg,rgba(255,255,255,.01) 0px,transparent 1px,transparent 2px,rgba(255,255,255,.01) 3px),radial-gradient(ellipse at top left,rgba(255,255,255,.08) 0%,transparent 50%),radial-gradient(ellipse at bottom right,rgba(255,255,255,.06) 0%,transparent 50%),radial-gradient(ellipse at center,rgba(255,255,255,.03) 0%,transparent 70%),linear-gradient(135deg,#000,#0a0a0a,#050505,#0a0a0a,#000);background-size:100% 100%,100% 100%,4px 4px,4px 4px,100% 100%,100% 100%,100% 100%,100% 100%;background-attachment:fixed;transition:background-color .5s ease;overflow-x:hidden;position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch}body:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.02) 0%,transparent 40%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.02) 0%,transparent 40%),radial-gradient(circle,rgba(255,255,255,.4) 1px,transparent 1px),radial-gradient(circle,rgba(255,255,255,.3) 1px,transparent 1px),radial-gradient(circle,rgba(255,255,255,.2) 1px,transparent 1px);background-size:100% 100%,100% 100%,250px 250px,350px 350px,450px 450px;background-position:0 0,0 0,0 0,40px 60px,80px 120px;animation:particleFloat 60s linear infinite;pointer-events:none;opacity:.3;z-index:1}@keyframes particleFloat{0%{background-position:0 0,40px 60px,80px 120px}to{background-position:300px 300px,340px 360px,380px 420px}}#root{min-height:100vh}.invitation-container{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:1rem;position:relative}.envelope-instruction{position:fixed;bottom:15%;left:50%;transform:translate(-50%);color:var(--gold-accent);font-size:.85rem;letter-spacing:4px;text-transform:uppercase;font-weight:300;opacity:.8;animation:subtitlePulse 3s ease-in-out infinite;pointer-events:none;text-shadow:0 0 10px rgba(201,165,92,.5),0 0 20px rgba(201,165,92,.3),0 2px 4px rgba(0,0,0,.5);padding:.8rem 1.5rem;border:1px solid rgba(201,165,92,.3);border-radius:2px;background:#1a1a1a66;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:5}@keyframes subtitlePulse{0%,to{opacity:.7;transform:translate(-50%) translateY(0)}50%{opacity:1;transform:translate(-50%) translateY(-3px)}}.card-revealed{width:100%;max-width:600px;max-height:90vh;background:linear-gradient(135deg,#1a1a1a,#0f0f0f);padding:3rem 1.5rem 2rem;border-radius:.5rem;box-shadow:0 30px 80px #000000e6,0 15px 40px #000000b3,0 0 0 1px #c9a55c33,inset 0 1px #ffffff0d;text-align:center;opacity:0;visibility:hidden;transform:scale(.5) translateY(100px);position:absolute;border:1px solid rgba(201,165,92,.3);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(201,165,92,.3) transparent}.card-revealed.revealed-visible{animation:cardDramaticEntrance 1s ease-out forwards;animation-delay:1.5s;z-index:100}.card-revealed::-webkit-scrollbar-track{background:transparent}.card-revealed::-webkit-scrollbar-thumb{background:#c9a55c4d;border-radius:3px}.card-revealed::-webkit-scrollbar-thumb:hover{background:#c9a55c80}.phone-card::-webkit-scrollbar{width:6px}.phone-card::-webkit-scrollbar-track{background:transparent}.phone-card::-webkit-scrollbar-thumb{background:#c9a55c4d;border-radius:3px}.phone-card::-webkit-scrollbar-thumb:hover{background:#c9a55c80}@keyframes cardDramaticEntrance{0%{opacity:0;visibility:visible;transform:scale(.4) translateY(60px);box-shadow:0 10px 30px #00000080,0 5px 15px #0000004d}50%{opacity:.9;transform:scale(.95) translateY(10px)}75%{opacity:1;transform:scale(1.02) translateY(-3px);box-shadow:0 35px 90px #000000d9,0 18px 45px #000000a6,0 0 30px #c9a55c4d}to{opacity:1;visibility:visible;transform:scale(1) translateY(0);box-shadow:0 30px 80px #000000e6,0 15px 40px #000000b3,0 0 0 1px #c9a55c33,inset 0 1px #ffffff0d}}.card-revealed::-webkit-scrollbar{width:6px}.card-revealed::-webkit-scrollbar-track{background:#ffffff0d;border-radius:10px}.card-revealed::-webkit-scrollbar-thumb{background:var(--gold-accent);border-radius:10px}.card-revealed::-webkit-scrollbar-thumb:hover{background:var(--gold-light)}.back-button{position:absolute;top:1rem;left:1rem;background:transparent;color:var(--text-secondary);border:1px solid rgba(201,165,92,.3);padding:.5rem 1rem;border-radius:.25rem;font-size:.75rem;font-weight:400;cursor:pointer;transition:all .3s ease;font-family:Playfair Display,serif;letter-spacing:2px;text-transform:uppercase;min-height:40px;min-width:70px;-webkit-tap-highlight-color:rgba(201,165,92,.2);touch-action:manipulation}.back-button:hover{background:#c9a55c1a;color:var(--gold-accent);border-color:var(--gold-accent);transform:translate(-2px)}.back-button:active{transform:translate(0)}.phone-verification{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:1rem}.phone-card{background:linear-gradient(135deg,#1a1a1a,#0f0f0f);padding:4rem 3rem;border-radius:.5rem;box-shadow:0 30px 80px #000000e6,0 15px 40px #000000b3,0 0 0 1px #c9a55c33;text-align:center;max-width:500px;width:100%;border:1px solid rgba(201,165,92,.3)}.verification-title{font-size:.9rem;font-weight:300;color:var(--text-secondary);margin-bottom:.5rem;font-family:Playfair Display,serif;letter-spacing:3px;text-transform:uppercase}.verification-names{display:flex;justify-content:center;align-items:center;font-family:Playfair Display,serif;font-size:3rem;color:var(--text-primary);font-weight:300;margin-bottom:2.5rem;letter-spacing:4px}.verification-names .ampersand{color:var(--gold-accent);font-size:2rem;margin:0 1rem;font-weight:300}.verification-subtitle{font-size:.85rem;color:var(--text-muted);margin-bottom:2.5rem;font-family:Playfair Display,serif;letter-spacing:1px;line-height:1.6}.phone-form{margin-bottom:1.5rem}.phone-input{width:100%;padding:1rem 1.5rem;font-size:1.1rem;border:1px solid rgba(201,165,92,.3);border-radius:.25rem;text-align:center;font-family:Playfair Display,serif;font-weight:300;color:var(--text-primary);background:#ffffff0d;transition:all .3s ease;letter-spacing:2px}.phone-input:focus{outline:none;border-color:var(--gold-accent);background:#ffffff14;box-shadow:0 0 0 1px #c9a55c33}.phone-input::placeholder{color:var(--text-muted);font-weight:300}.phone-error{color:#dc2626;font-size:.875rem;margin-top:.5rem;font-weight:500}.phone-submit{width:100%;padding:1rem 2rem;font-size:.75rem;font-weight:400;background:transparent;color:var(--text-secondary);border:1px solid rgba(201,165,92,.3);border-radius:.25rem;cursor:pointer;transition:all .3s ease;font-family:Playfair Display,serif;letter-spacing:3px;text-transform:uppercase;margin-top:1.5rem;min-height:44px;-webkit-tap-highlight-color:rgba(201,165,92,.2);touch-action:manipulation}.phone-submit:hover{background:#c9a55c1a;color:var(--gold-accent);border-color:var(--gold-accent)}.phone-submit:active{background:#c9a55c26}.verification-note{font-size:.7rem;color:var(--text-muted);font-style:italic;line-height:1.6;letter-spacing:.5px;font-weight:300}.vip-event-details{padding:2rem;background:#c9a55c0d;border:1px solid rgba(201,165,92,.3);border-radius:.25rem;margin-top:2rem}.vip-badge{display:inline-block;background:transparent;color:var(--gold-accent);border:1px solid var(--gold-accent);padding:.4rem 1.2rem;border-radius:.25rem;font-weight:300;font-size:.7rem;letter-spacing:2px;text-transform:uppercase}.card-revealed a{transition:all .3s ease}.card-revealed a:hover{background:#c9a55c1a!important;color:var(--gold-accent)!important;border-color:var(--gold-accent)!important}.envelope-wrapper{width:var(--envelope-width);height:var(--envelope-height);position:relative;cursor:pointer;perspective:1500px;box-shadow:0 30px 80px #000c,0 15px 40px #0009,0 0 60px #c9a55c33,0 0 0 1px #c9a55c26;border-radius:0;overflow:visible;filter:drop-shadow(0 0 40px rgba(201,165,92,.15));z-index:10;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.envelope-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .8s ease;transform:rotateY(180deg)}.envelope-wrapper.flipped .envelope-inner{transform:rotateY(0)}.envelope-front,.envelope-back{width:100%;height:100%;position:absolute;top:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform-style:preserve-3d}.envelope-front{z-index:2;transform:rotateY(0)}.envelope-front *{backface-visibility:hidden;-webkit-backface-visibility:hidden}.envelope-back{transform:rotateY(180deg);z-index:1;background:linear-gradient(135deg,#faf5eb,#f5eedc,#f0e8d2);box-shadow:0 20px 60px #00000080,0 10px 30px #0000004d,inset 0 2px 10px #ffffff4d;display:flex;align-items:center;justify-content:center;position:relative}.postage-stamp{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);width:100px;height:100px;display:flex;align-items:center;justify-content:center}.postage-stamp-logo{width:100px;height:100px;opacity:.85;filter:brightness(0) saturate(100%) invert(60%) sepia(40%) saturate(400%) hue-rotate(5deg) brightness(95%) contrast(90%)}.envelope-recipient{position:absolute;top:60%;left:50%;transform:translate(-50%);font-family:Playfair Display,serif;font-size:18px;font-weight:400;color:#3a3a3a;letter-spacing:3px;text-align:center;width:100%;padding:0 20px}.envelope-center-message{display:none;position:absolute;top:55%;left:50%;transform:translate(-50%,-50%);font-family:Arial Black,Arial Bold,Gadget,sans-serif;font-size:42px;font-weight:900;color:var(--gold-accent);letter-spacing:6px;text-transform:uppercase;line-height:.85;text-shadow:0 0 10px rgba(201,165,92,.5),0 0 20px rgba(201,165,92,.3),0 0 30px rgba(201,165,92,.2);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-stretch:condensed;animation:textGlow 3s ease-in-out infinite}@keyframes textGlow{0%,to{text-shadow:0 0 15px rgba(201,165,92,.5),0 0 25px rgba(201,165,92,.3),0 0 35px rgba(201,165,92,.2)}50%{text-shadow:0 0 20px rgba(201,165,92,.6),0 0 35px rgba(201,165,92,.4),0 0 50px rgba(201,165,92,.3)}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-10px) rotate(1deg)}}.envelope-wrapper{animation:float 4s ease-in-out infinite}.envelope-body{position:absolute;inset:0;background:linear-gradient(135deg,#f5f0e6,#eee8dc,#ebe4d7),repeating-linear-gradient(0deg,rgba(0,0,0,.015) 0px,transparent 1px,transparent 2px,rgba(0,0,0,.01) 3px),repeating-linear-gradient(90deg,rgba(0,0,0,.015) 0px,transparent 1px,transparent 2px,rgba(0,0,0,.01) 3px);box-shadow:0 8px 30px #0006,0 4px 15px #0000004d,inset 0 0 60px #0000000d,inset 0 1px #fffc;border-radius:0;z-index:2;overflow:visible;border:1px solid rgba(210,200,185,.8)}.envelope-wrapper{position:relative}.envelope-front:before{content:"";position:absolute;top:-40px;left:-40px;width:100px;height:100px;background-image:url(/ai-generated-white-rose.png);background-size:contain;background-repeat:no-repeat;background-position:center;z-index:15;pointer-events:none;opacity:.85;animation:floralBreathTopLeft 4s ease-in-out infinite}.envelope-front:after{content:"";position:absolute;bottom:-40px;right:-40px;width:100px;height:100px;background-image:url(/ai-generated-white-rose.png);background-size:contain;background-repeat:no-repeat;background-position:center;transform:scaleX(-1) rotate(180deg);z-index:15;pointer-events:none;opacity:.85;animation:floralBreathBottomRight 4s ease-in-out infinite 2s}.envelope-back:before,.envelope-back:after{content:none}.invitation-container:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:200%;height:200%;background:radial-gradient(ellipse at center,rgba(255,255,255,.12) 0%,rgba(255,255,255,.08) 20%,rgba(255,255,255,.04) 40%,rgba(255,255,255,.02) 60%,transparent 80%);z-index:-1;animation:spotlightPulse 6s ease-in-out infinite;pointer-events:none}@keyframes floralBreathTopLeft{0%,to{transform:translateY(0) scale(1);opacity:.9}50%{transform:translateY(-8px) scale(1.02);opacity:.95}}@keyframes floralBreathBottomRight{0%,to{transform:scaleX(-1) rotate(180deg) translateY(0) scale(1);opacity:.9}50%{transform:scaleX(-1) rotate(180deg) translateY(-8px) scale(1.02);opacity:.95}}@keyframes floralBreathCenter{0%,to{transform:translate(-50%) translateY(0) scale(1);opacity:.8}50%{transform:translate(-50%) translateY(-6px) scale(1.03);opacity:.9}}@keyframes floralBreathTopRight{0%,to{transform:rotate(90deg) translateY(0) scale(1);opacity:.85}50%{transform:rotate(90deg) translateY(-8px) scale(1.02);opacity:.9}}@keyframes floralBreathBottomLeft{0%,to{transform:rotate(270deg) translateY(0) scale(1);opacity:.85}50%{transform:rotate(270deg) translateY(-8px) scale(1.02);opacity:.9}}@keyframes spotlightPulse{0%,to{opacity:.8;transform:translate(-50%,-50%) scale(1)}33%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}66%{opacity:.9;transform:translate(-50%,-50%) scale(1.08)}}@keyframes framePulse{0%,to{opacity:.6;box-shadow:inset 0 0 20px #c9a55c0d,0 0 20px #c9a55c1a}50%{opacity:1;box-shadow:inset 0 0 30px #c9a55c14,0 0 30px #c9a55c26}}@keyframes floralBreath{0%,to{transform:rotate(-15deg) scale(1);opacity:.85}50%{transform:rotate(-12deg) scale(1.08);opacity:1}}.stamp{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(0);width:95px;height:95px;background:radial-gradient(circle at 30% 30%,#d4af37,#c9a55c 45%,#9b7e3c);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:11;box-shadow:0 10px 30px #c9a55c99,0 5px 20px #c9a55c80,0 2px 10px #000000b3,0 0 40px #c9a55c4d,inset 0 2px 6px #fff3,inset 0 -2px 6px #0006,inset 0 0 20px #c9a55c4d,inset 0 0 0 1px dashed #00000026;border:3px solid rgba(201,165,92,.4);animation:sealGlow 3s ease-in-out infinite;outline:1px dashed rgba(0,0,0,.15);outline-offset:-10px}.stamp:before{content:"❦";position:absolute;top:-24px;left:-30px;font-size:2.5rem;color:var(--gold-accent);opacity:.65;transform:rotate(-45deg);text-shadow:0 2px 4px rgba(0,0,0,.3),0 0 12px rgba(201,165,92,.4);animation:vineSwayLeft 3s ease-in-out infinite}.stamp:after{content:"❦";position:absolute;bottom:-24px;right:-30px;font-size:2.5rem;color:var(--gold-accent);opacity:.65;transform:rotate(135deg) scaleX(-1);text-shadow:0 2px 4px rgba(0,0,0,.3),0 0 12px rgba(201,165,92,.4);animation:vineSwayRight 3s ease-in-out infinite .5s}@keyframes vineSwayLeft{0%,to{transform:rotate(-45deg) translate(0)}50%{transform:rotate(-42deg) translate(-2px)}}@keyframes vineSwayRight{0%,to{transform:rotate(135deg) scaleX(-1) translate(0)}50%{transform:rotate(132deg) scaleX(-1) translate(-2px)}}.stamp-logo{pointer-events:none;transition:transform .3s ease}.stamp:hover{transform:translate(-50%,-50%) rotate(15deg) scale(1.05)}.stamp-logo{width:80%;height:80%;object-fit:contain;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;filter:brightness(0) saturate(100%) invert(45%) sepia(55%) saturate(550%) hue-rotate(10deg) brightness(75%) contrast(110%) drop-shadow(0 2px 4px rgba(0,0,0,.3));animation:logoGlow 3s ease-in-out infinite}@keyframes logoGlow{0%,to{filter:brightness(0) saturate(100%) invert(45%) sepia(55%) saturate(550%) hue-rotate(10deg) brightness(75%) contrast(110%) drop-shadow(0 2px 4px rgba(0,0,0,.3));transform:translate(-50%,-50%) scale(1)}50%{filter:brightness(0) saturate(100%) invert(45%) sepia(55%) saturate(550%) hue-rotate(10deg) brightness(85%) contrast(115%) drop-shadow(0 2px 6px rgba(0,0,0,.4)) drop-shadow(0 0 8px rgba(150,115,50,.5));transform:translate(-50%,-50%) scale(1.05)}}@keyframes sealGlow{0%,to{box-shadow:0 8px 25px #c9a55c80,0 4px 15px #c9a55c66,0 2px 8px #0009,inset 0 2px 6px #ffffff26,inset 0 -2px 6px #0006,inset 0 0 20px #c9a55c33}50%{box-shadow:0 10px 30px #c9a55c99,0 5px 20px #c9a55c80,0 2px 10px #000000b3,0 0 25px #c9a55c4d,inset 0 2px 6px #fff3,inset 0 -2px 6px #0006,inset 0 0 25px #c9a55c40}}.address-label{position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);text-align:center;font-family:Courier New,Courier,monospace;color:#000;z-index:15;line-height:2;padding:1rem 2rem;pointer-events:none}.address-label:before,.address-label:after{display:none}.address-line{font-size:15px;font-weight:400;color:#000;text-transform:uppercase;letter-spacing:2px;margin:.4rem 0}.address-line:first-child{font-size:16px;font-weight:600;letter-spacing:3px;margin-bottom:.8rem}.top-flap{position:absolute;width:0;height:0;border-style:solid;border-width:calc(var(--envelope-height) * .65) calc(var(--envelope-width) / 2) 0 calc(var(--envelope-width) / 2);border-color:linear-gradient(135deg,rgba(230,225,215,1) 0%,rgba(225,218,205,1) 50%,rgba(220,213,200,1) 100%) transparent transparent transparent;border-color:rgba(228,220,208,1) transparent transparent transparent;top:0;left:0;transform-origin:top center;transition:transform .8s ease-in-out;z-index:10;filter:drop-shadow(0 8px 20px rgba(0,0,0,.4));transform:rotateX(0)}.top-flap:before{content:"";position:absolute;top:calc(var(--envelope-height) * -.65);left:calc(var(--envelope-width) / -2);width:var(--envelope-width);height:calc(var(--envelope-height) * .65);background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.02) 0px,transparent 2px,transparent 4px,rgba(0,0,0,.015) 6px),radial-gradient(circle at 30% 40%,rgba(210,200,185,.3) 0%,transparent 60%);clip-path:polygon(0 0,100% 0,50% 100%);pointer-events:none;mix-blend-mode:multiply}.top-flap:after{content:"";position:absolute;width:calc(var(--envelope-width) * 1.42);height:2px;background:linear-gradient(to right,transparent,rgba(0,0,0,.25) 20%,rgba(0,0,0,.25) 80%,transparent);top:calc(var(--envelope-height) * .65);left:calc(var(--envelope-width) / -2);transform:rotate(-21deg);transform-origin:center}.envelope-wrapper.open .stamp{animation:sealBreakAway 1s cubic-bezier(.68,-.55,.265,1.55) forwards}@keyframes sealBreakAway{0%{transform:translate(-50%,-50%) rotate(0) scale(1);opacity:1}60%{transform:translate(-50%,-50%) rotate(360deg) scale(1.3);opacity:.5}to{transform:translate(-50%,-100%) rotate(540deg) scale(0);opacity:0}}.envelope-wrapper.open .top-flap{animation:flapDramaticOpen 2s cubic-bezier(.34,1.2,.64,1) forwards;animation-delay:.5s;transform-origin:top center}@keyframes flapDramaticOpen{0%{transform:rotateX(0);filter:drop-shadow(0 8px 20px rgba(0,0,0,.4))}to{transform:rotateX(180deg);filter:drop-shadow(0 -5px 15px rgba(0,0,0,.3))}}.envelope-wrapper.open .envelope-body{animation:envelopePulse .6s ease-out forwards;animation-delay:1.2s}@keyframes envelopePulse{0%{transform:scale(1);opacity:1}to{transform:scale(1.03);opacity:0}}.envelope-wrapper.open{animation:envelopeZoomOut .8s ease-out forwards;animation-delay:1.5s;pointer-events:none}@keyframes envelopeZoomOut{0%{transform:scale(1) rotate(0);opacity:1}to{transform:scale(1.1) rotate(0);opacity:0;pointer-events:none;visibility:hidden}}.names{display:flex;justify-content:center;align-items:center;font-family:Playfair Display,serif;font-size:2rem;line-height:1.1;color:var(--text-primary);font-weight:300;letter-spacing:4px}.ampersand{color:var(--gold-accent);font-size:1.5rem;font-weight:300;margin:0 1rem;align-self:center}.countdown-item{display:flex;flex-direction:column;align-items:center;padding:.75rem;margin:.5rem;background:#ffffff08;color:var(--text-primary);border-radius:.25rem;min-width:70px;border:1px solid rgba(201,165,92,.2);box-shadow:0 4px 12px #0000004d,inset 0 1px 2px #ffffff0d}@keyframes pulse{0%,to{box-shadow:0 4px 12px #d4af374d,inset 0 1px 2px #d4af371a;transform:scale(1)}50%{box-shadow:0 6px 16px #d4af3780,0 0 20px #d4af3733,inset 0 1px 2px #d4af3733;transform:scale(1.02)}}.countdown-number{font-size:1.8rem;font-weight:300;line-height:1;color:var(--text-primary)}.countdown-label{font-size:.65rem;text-transform:uppercase;letter-spacing:2px;margin-top:.5rem;color:var(--text-muted);font-weight:300}.hide-on-slide{opacity:1;transition:opacity .3s ease}.envelope-wrapper.open .hide-on-slide{opacity:0}@media(max-width:768px){:root{--envelope-width: 340px;--envelope-height: 220px}.invitation-container{padding:.5rem}.envelope-wrapper{width:90vw;max-width:var(--envelope-width);height:auto;aspect-ratio:380 / 240}.stamp{width:70px;height:70px}.stamp-inner{font-size:22px}.address-line{font-size:13px;letter-spacing:3px}.address-line.small{font-size:10px}.card-revealed{max-width:90vw;padding:2rem 1rem}.names,.ampersand{font-size:1.8rem}.countdown-item{min-width:50px;padding:.4rem;margin:.3rem}.countdown-number{font-size:1.5rem}.countdown-label{font-size:.65rem}}@media(max-width:480px){:root{--envelope-width: 300px;--envelope-height: 190px}.envelope-wrapper{width:95vw;max-width:var(--envelope-width)}.back-button{top:.75rem;left:.75rem;padding:.4rem .875rem;font-size:.8rem}.phone-card{padding:2rem 1.5rem}.verification-title{font-size:1.5rem}.verification-names{font-size:2rem}.verification-names .ampersand{font-size:1.75rem}.phone-input{font-size:1.1rem;padding:.875rem 1.25rem}.vip-event-details{padding:1.25rem .75rem;margin-top:1.5rem}.vip-badge{font-size:.8rem;padding:.4rem 1rem}.stamp{width:60px;height:60px}.stamp-inner{font-size:19px;letter-spacing:0px}.address-label{top:20px}.address-line{font-size:11px;letter-spacing:2px}.address-line.small{font-size:9px;letter-spacing:1px}.card-revealed{max-width:95vw;max-height:85vh;padding:2.5rem 1rem 1.5rem;border-radius:1rem}.card-revealed h1{font-size:1.3rem;margin-bottom:.5rem}.names{font-size:1.5rem;margin-bottom:1rem}.ampersand{font-size:1.5rem}.card-revealed .names{font-size:2rem;margin-bottom:1.25rem}.card-revealed .ampersand{font-size:1.75rem}#countdown-timer{margin-bottom:1.5rem}.countdown-item{min-width:45px;padding:.35rem;margin:.25rem}.countdown-number{font-size:1.3rem}.countdown-label{font-size:.6rem}.card-revealed div[class*=text-2xl]{font-size:1.15rem;margin-bottom:.5rem}.card-revealed p[class*=text-xl]{font-size:.95rem;margin-bottom:1.5rem}.card-revealed p[class*=text-lg]{font-size:.9rem;margin-bottom:1rem}.card-revealed a{padding:.625rem 1.5rem;font-size:.875rem}.card-revealed p[class*=text-sm]{font-size:.7rem;margin-top:.5rem}}@media(max-width:360px){.stamp{width:55px;height:55px}.stamp-inner{font-size:17px}.address-line{font-size:10px;letter-spacing:1.5px}.countdown-item{min-width:40px;padding:.3rem;margin:.2rem}.countdown-number{font-size:1.1rem}.countdown-label{font-size:.55rem}}@media(max-width:768px){@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(.5deg)}}.envelope-wrapper:hover{transform:scale(1.02) translateY(-3px)}.phone-card{padding:2.5rem 1.5rem;margin:1rem;max-width:95vw}.verification-title{font-size:1.2rem;margin-bottom:.75rem}.verification-names{font-size:2.2rem;margin-bottom:1.5rem}.verification-names .ampersand{font-size:1.8rem;margin:0 .75rem}.verification-subtitle{font-size:.8rem;margin-bottom:2rem;padding:0 .5rem}.verification-note{font-size:.65rem}.envelope-instruction{bottom:10%;font-size:.65rem;letter-spacing:2px;padding:.6rem 1rem;max-width:90vw;text-align:center}.attendance-intent-section{margin-top:1rem!important;margin-bottom:1.5rem!important;padding-top:1rem!important;padding-bottom:1rem!important}.intent-button{font-size:.6rem!important;padding:.6rem 1rem!important;letter-spacing:1px!important}.contact-section{margin-top:2rem!important;padding-top:1.5rem!important}.contact-section a{font-size:.75rem!important}.vip-badge{font-size:.65rem;padding:.5rem 1.25rem;margin-bottom:1rem}}@media(max-width:480px){.phone-card{padding:2rem 1.25rem}.verification-title{font-size:1rem}.verification-names{font-size:1.8rem;margin-bottom:1.25rem}.verification-names .ampersand{font-size:1.5rem;margin:0 .5rem}.verification-subtitle{font-size:.75rem;margin-bottom:1.75rem}.phone-input{font-size:1rem;padding:.875rem 1rem}.phone-submit{font-size:.75rem;padding:.875rem 2rem}.envelope-instruction{bottom:8%;font-size:.55rem;letter-spacing:1.5px;padding:.5rem .875rem}.attendance-intent-section>div{flex-direction:column!important;gap:.75rem!important}.intent-button{width:100%;max-width:250px}.contact-section>div{gap:1rem!important}.card-revealed>*{margin-bottom:.75rem}}@media(max-width:360px){.phone-card{padding:1.75rem 1rem}.verification-names{font-size:1.5rem}.verification-names .ampersand{font-size:1.25rem}.envelope-instruction{font-size:.5rem;letter-spacing:1px;padding:.4rem .75rem}.intent-button{font-size:.55rem!important;padding:.5rem .875rem!important}.honeymoon-fund a{font-size:.6rem!important;padding:.45rem .75rem!important}}@media(max-width:900px)and (max-height:500px)and (orientation:landscape){.invitation-container{padding:.5rem;min-height:auto}.phone-card{padding:1.5rem 2rem;max-height:90vh;overflow-y:auto}.verification-names{font-size:1.8rem;margin-bottom:1rem}.phone-input{padding:.75rem 1.25rem}.phone-submit{padding:.75rem 1.75rem}.envelope-wrapper{max-width:50vh;max-height:70vh}.envelope-instruction{bottom:5%;font-size:.6rem}.card-revealed{max-height:90vh;overflow-y:auto;padding:1.5rem 1rem}.back-button{top:.5rem;left:.5rem;padding:.375rem .75rem;font-size:.75rem}}@keyframes scrollBounce{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(8px);opacity:.5}}.card-revealed.scrolled .scroll-indicator{display:none}
