@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400;1,600&family=Montserrat:wght@300;400;500&display=swap";*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#050505}#root{width:100%}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes sealRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes glowPulse{0%,to{opacity:.4}50%{opacity:.8}}@keyframes sparklePop{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;filter:brightness(1.8);transform:scale(1.5)}}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes borderBreath{0%,to{opacity:.07}50%{opacity:.18}}@keyframes topGlowBreath{0%,to{opacity:.3;width:40%;left:30%}50%{opacity:.9;width:60%;left:20%}}@keyframes detailPulse{0%,to{border-color:#1a1a1a}50%{border-color:#d4af701f}}@keyframes labelGlow{0%,to{opacity:.65}50%{opacity:1;text-shadow:0 0 12px #d4af7066}}@keyframes hostNameGlow{0%,to{filter:brightness()}50%{filter:brightness(1.2)drop-shadow(0 0 8px #d4af704d)}}.invitation-card .animate-1,.invitation-card .animate-2,.invitation-card .animate-3,.invitation-card .animate-4,.invitation-card .animate-5,.invitation-card .animate-6,.invitation-card .animate-7{opacity:0}.invitation-card.visible .animate-1{animation:.7s .1s forwards fadeUp}.invitation-card.visible .animate-2{animation:.7s .25s forwards fadeUp}.invitation-card.visible .animate-3{animation:.7s .4s forwards fadeUp}.invitation-card.visible .animate-4{animation:.7s .55s forwards fadeUp}.invitation-card.visible .animate-5{animation:.7s .7s forwards fadeUp}.invitation-card.visible .animate-6{animation:.7s .85s forwards fadeUp}.invitation-card.visible .animate-7{animation:.7s 1s forwards fadeUp}.invitation-card{text-align:center;opacity:0;background-color:#0c0c0c;background-image:radial-gradient(at 50% 0,#d4af700f 0%,#0000 60%),radial-gradient(at 50% 100%,#d4af700a 0%,#0000 55%),radial-gradient(at 0%,#d4af7005 0%,#0000 50%),radial-gradient(at 100%,#d4af7005 0%,#0000 50%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border:1px solid #222;width:100%;max-width:580px;margin:0 auto;padding:68px 64px;transition:opacity 1s,transform .15s;position:relative;transform:translateY(28px)}.invitation-card.visible{opacity:1;animation:6s ease-in-out 1.5s infinite floatCard;transform:translateY(0);box-shadow:0 0 0 1px #161616,0 60px 140px #000000f2,inset 0 1px #d4af7014,inset 0 -1px #d4af700a}.top-glow{background:linear-gradient(90deg,#0000,#d4af70b3,#0000);height:1px;animation:4s ease-in-out infinite topGlowBreath;position:absolute;top:0}.inner-border{pointer-events:none;border:1px solid #d4af7012;animation:4s ease-in-out infinite borderBreath;position:absolute;inset:11px}.corner{border-style:solid;border-color:#d4af70a6;width:28px;height:28px;position:absolute}.corner-inner{border-style:solid;border-color:#d4af7040;width:10px;height:10px;position:absolute}.corner-tl{border-width:1px 0 0 1px;top:18px;left:18px}.corner-tr{border-width:1px 1px 0 0;top:18px;right:18px}.corner-bl{border-width:0 0 1px 1px;bottom:18px;left:18px}.corner-br{border-width:0 1px 1px 0;bottom:18px;right:18px}.corner-tl .corner-inner{border-width:0 1px 1px 0;bottom:-5px;right:-5px}.corner-tr .corner-inner{border-width:0 0 1px 1px;bottom:-5px;left:-5px}.corner-bl .corner-inner{border-width:1px 1px 0 0;top:-5px;right:-5px}.corner-br .corner-inner{border-width:1px 0 0 1px;top:-5px;left:-5px}.ornament{align-items:center;gap:12px;margin-bottom:36px;display:flex}.ornament-bottom{margin-top:40px;margin-bottom:0}.ornament-line{background:linear-gradient(90deg,#0000,#d4af7073 50%,#0000);flex:1;height:1px}.ornament-cluster{align-items:center;gap:6px;display:flex}.ornament-diamond{color:#d4af70;font-size:9px;line-height:1}.sparkle{animation:2.5s ease-in-out infinite sparklePop;display:inline-block}.ornament-dot{background:#d4af7073;border-radius:50%;width:3px;height:3px;display:inline-block}.label-invited{letter-spacing:.45em;color:#d4af70;text-transform:uppercase;margin:0 0 36px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:400}.guest-section{margin-bottom:0}.guest-label{letter-spacing:.35em;color:#888;text-transform:uppercase;margin:0 0 12px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:300}.guest-name{letter-spacing:.03em;background:linear-gradient(135deg,#f5f0e8 30%,#d4af70 60%,#f5f0e8 100%) 0 0/400px 100%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 18px;font-family:Cormorant Garamond,serif;font-size:2.7rem;font-style:italic;font-weight:300;animation:5s linear infinite shimmer}.guest-underline{background:linear-gradient(90deg,#0000,#d4af708c,#0000);width:72px;height:1px;margin:0 auto}.divider{align-items:center;gap:14px;margin:32px 0;display:flex}.divider-line{background:linear-gradient(90deg,#0000,#1e1e1e 50%,#0000);flex:1;height:1px}.divider-ornament{color:#d4af704d;font-size:8px;line-height:1}.host-section{margin:0}.host-label{letter-spacing:.12em;color:#777;margin:0 0 2px;font-family:Montserrat,sans-serif;font-size:12px;font-weight:300;line-height:1.9}.host-age{color:#0000;-webkit-text-stroke:1px #d4af702e;letter-spacing:-.02em;margin:6px 0 2px;font-family:Cormorant Garamond,serif;font-size:7.5rem;font-weight:300;line-height:1}.host-name{letter-spacing:.14em;text-transform:uppercase;background:linear-gradient(135deg,#e8e0d0 0%,#d4af70 50%,#e8e0d0 100%) 0 0/400px 100%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:8px 0 0;font-family:Cormorant Garamond,serif;font-size:2.2rem;font-weight:600;animation:6s linear infinite shimmer,4s ease-in-out infinite hostNameGlow}.seal{justify-content:center;align-items:center;width:100px;height:100px;margin:28px auto 4px;display:flex}.seal-ring{width:100%;height:100%;position:relative}.seal-svg{transform-origin:50%;width:100%;height:100%;animation:30s linear infinite sealRotate}.details-grid{background:#181818;border:1px solid #1a1a1a;grid-template-columns:1fr 1fr;gap:1px;display:grid}.detail-item{background:#0c0c0c;flex-direction:column;align-items:center;gap:5px;padding:20px 16px;transition:background .3s;animation:5s ease-in-out infinite detailPulse;display:flex}.detail-item:nth-child(2){animation-delay:.8s}.detail-item:nth-child(3){animation-delay:1.6s}.detail-item:nth-child(4){animation-delay:2.4s}.detail-item:hover{background:#0f0f0f}.detail-item.full-width{grid-column:1/-1}.detail-label{letter-spacing:.35em;color:#d4af70a6;text-transform:uppercase;font-family:Montserrat,sans-serif;font-size:9px;font-weight:400;animation:4s ease-in-out infinite labelGlow}.detail-value{color:#f0ece4;letter-spacing:.04em;margin-top:2px;font-family:Cormorant Garamond,serif;font-size:1.3rem;font-weight:400}.detail-sub{color:#5a5a5a;letter-spacing:.06em;margin-top:4px;font-family:Montserrat,sans-serif;font-size:11px;font-weight:300;line-height:1.7}.map-link{letter-spacing:.2em;color:#d4af70b3;text-transform:uppercase;margin-top:8px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:300;text-decoration:none;transition:color .2s}.map-link:hover{color:#d4af70}.dress-code{justify-content:center;align-items:center;gap:10px;display:flex}.dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.dot-black{background:#0a0a0a;border:1px solid #3a3a3a}.dot-white{background:#f5f0e8;box-shadow:0 0 8px #f5f0e840}.calendar-btn{letter-spacing:.25em;color:#666;text-transform:uppercase;border:1px solid #202020;align-items:center;gap:10px;margin-top:36px;padding:13px 28px;font-family:Montserrat,sans-serif;font-size:10px;font-weight:300;text-decoration:none;transition:color .3s,border-color .3s;display:inline-flex;position:relative;overflow:hidden}.calendar-btn:before{content:"";background:linear-gradient(90deg,#0000,#d4af700d 50%,#0000);transition:transform .5s;position:absolute;inset:0;transform:translate(-100%)}.calendar-btn:hover{color:#d4af70;border-color:#d4af704d}.calendar-btn:hover:before{transform:translate(100%)}.calendar-icon{flex-shrink:0;width:13px;height:13px}.app-bg{box-sizing:border-box;background-color:#060606;background-image:radial-gradient(at 25% 25%,#d4af700d 0%,#0000 50%),radial-gradient(at 75% 75%,#d4af700a 0%,#0000 50%),radial-gradient(#d4af7005 0%,#0000 70%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;justify-content:center;align-items:flex-start;min-height:100vh;padding:64px 24px;display:flex}.app-container{width:100%;max-width:660px}
