@import url("https://fonts.googleapis.com/css2?family=Cormorant+Infant:ital,wght@0,300;0,400;0,700;1,300;1,400&family=Great+Vibes&family=Jost:wght@300;400;500&display=swap");@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes glowBreath{0%,to{transform:scale(1);opacity:.18}50%{transform:scale(1.12);opacity:.28}}@keyframes goldShimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes scrollHint{0%,to{transform:translateY(0);opacity:.5}50%{transform:translateY(6px);opacity:1}}@keyframes grainMove{0%{transform:translate(0)}20%{transform:translate(-1px,-2px)}40%{transform:translate(1px,1px)}60%{transform:translate(-1px,2px)}80%{transform:translate(2px,-1px)}to{transform:translate(0)}}@keyframes lineGrow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes tagSlide{0%{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:translateX(0)}}.xp-root{background:#0c0a08;color:#f5efe6;font-family:Jost,system-ui,sans-serif;min-height:100dvh;overflow-x:hidden;position:relative}.xp-grain{position:fixed;inset:-50%;width:200%;height:200%;z-index:1;opacity:.035;animation:grainMove .4s steps(1) infinite;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");background-size:200px 200px}.xp-glow,.xp-grain{pointer-events:none}.xp-glow{position:absolute;border-radius:50%}.xp-glow-center{width:70vmax;height:70vmax;top:50%;left:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(180,120,60,.22) 0,rgba(140,80,30,.1) 40%,transparent 70%);animation:glowBreath 7s ease-in-out infinite}.xp-glow-top{width:40vmax;height:40vmax;top:-10%;right:-5%;background:radial-gradient(circle,rgba(100,70,30,.12) 0,transparent 65%);animation:glowBreath 9s ease-in-out infinite reverse}.xp-glow-bot{width:30vmax;height:30vmax;bottom:-5%;left:-5%;background:radial-gradient(circle,rgba(80,50,20,.1) 0,transparent 65%);animation:glowBreath 11s ease-in-out 2s infinite}.xp-nav{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:24px 24px 0}.xp-logo{font-family:Great Vibes,cursive;font-size:clamp(28px,7vw,36px);background:linear-gradient(135deg,#c9a96e,#e8c87a 50%,#c9a96e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.xp-nav-link{font-family:Jost,sans-serif;font-size:13px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:hsla(36,43%,93%,.55);text-decoration:none;transition:color .2s}.xp-nav-link:hover{color:hsla(36,43%,93%,.9)}.xp-hero{position:relative;z-index:5;min-height:90dvh;justify-content:center;text-align:center;padding:0 24px}.xp-hero,.xp-statement{display:flex;flex-direction:column;align-items:center}.xp-statement{gap:0;line-height:1}.xp-you-only{font-family:Cormorant Infant,Georgia,serif;font-weight:300;font-style:italic;font-size:clamp(16px,4.2vw,24px);letter-spacing:.38em;text-transform:uppercase;color:hsla(39,46%,61%,.7);margin-bottom:4px;opacity:0;animation:fadeUp 1s cubic-bezier(.16,1,.3,1) .2s forwards}.xp-live{font-family:Great Vibes,cursive;font-size:clamp(100px,28vw,220px);line-height:.85;background:linear-gradient(135deg,#a07838,#c9a96e 25%,#f0d898 50%,#c9a96e 75%,#a07838);background-size:300% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:fadeUp 1.1s cubic-bezier(.16,1,.3,1) .45s forwards,goldShimmer 6s linear 1.5s infinite;opacity:0;margin-bottom:-4px}.xp-once{font-family:Cormorant Infant,Georgia,serif;font-weight:700;font-size:clamp(56px,15vw,120px);letter-spacing:-.01em;color:#f5efe6;line-height:1;opacity:0;animation:fadeUp 1.1s cubic-bezier(.16,1,.3,1) .65s forwards}.xp-tagline-wrap{margin-top:36px;display:flex;flex-direction:column;align-items:center;gap:16px;opacity:0;animation:fadeIn 1s ease 1.1s forwards}.xp-rule{width:40px;height:1px;background:linear-gradient(90deg,transparent,#c9a96e,transparent);transform-origin:center;animation:lineGrow .8s cubic-bezier(.16,1,.3,1) 1.2s both}.xp-tagline{font-family:Jost,sans-serif;font-size:13px;font-weight:300;letter-spacing:.18em;text-transform:uppercase;color:hsla(36,43%,93%,.45)}.xp-cta-wrap{margin-top:44px;display:flex;flex-direction:column;align-items:center;gap:14px;opacity:0;animation:fadeUp .9s cubic-bezier(.16,1,.3,1) 1.3s forwards}.xp-btn-main{display:inline-flex;align-items:center;gap:10px;padding:16px 36px;border-radius:100px;background:linear-gradient(135deg,#8b5e48,#a07050);color:#faf6ee;font-family:Jost,sans-serif;font-size:14px;font-weight:500;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;box-shadow:0 4px 32px rgba(139,94,72,.4),inset 0 1px 0 hsla(0,0%,100%,.06);transition:transform .2s,box-shadow .2s}.xp-btn-main:hover{transform:translateY(-1px);box-shadow:0 8px 40px rgba(139,94,72,.5),inset 0 1px 0 hsla(0,0%,100%,.08)}.xp-btn-main:active{transform:scale(.97)}.xp-btn-ghost{font-family:Jost,sans-serif;font-size:12px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:hsla(36,43%,93%,.38);text-decoration:none;transition:color .2s}.xp-btn-ghost:hover{color:hsla(36,43%,93%,.7)}.xp-scroll-hint{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;animation:fadeIn 1s ease 2s forwards}.xp-scroll-hint span{font-family:Jost,sans-serif;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:hsla(36,43%,93%,.25)}.xp-scroll-arrow{animation:scrollHint 1.8s ease-in-out infinite}.xp-moments{position:relative;z-index:5;padding:0 24px 80px}.xp-section-eyebrow{font-family:Jost,sans-serif;font-size:10px;font-weight:400;letter-spacing:.4em;text-transform:uppercase;color:hsla(39,46%,61%,.6);text-align:center;margin-bottom:32px}.xp-cards{display:flex;flex-direction:column;gap:12px}.xp-card{position:relative;border-radius:20px;overflow:hidden;height:160px;display:flex;align-items:flex-end;padding:24px;text-decoration:none;border:1px solid hsla(0,0%,100%,.04);transition:transform .3s cubic-bezier(.16,1,.3,1)}.xp-card:active{transform:scale(.98)}.xp-card-wedding{background:linear-gradient(160deg,rgba(60,30,15,.95),rgba(30,18,10,.98)),radial-gradient(ellipse 80% 60% at 80% 30%,hsla(30,35%,55%,.3) 0,transparent 65%)}.xp-card-baptism{background:linear-gradient(160deg,rgba(10,22,40,.97),rgba(6,14,26,.99)),radial-gradient(ellipse 80% 60% at 80% 30%,rgba(80,130,180,.3) 0,transparent 65%)}.xp-card-birthday{background:linear-gradient(160deg,rgba(30,15,5,.97),rgba(18,10,4,.99)),radial-gradient(ellipse 80% 60% at 80% 30%,rgba(200,130,40,.3) 0,transparent 65%)}.xp-card-other{background:linear-gradient(160deg,rgba(16,18,20,.97),rgba(10,11,12,.99)),radial-gradient(ellipse 80% 60% at 80% 30%,hsla(210,9%,43%,.2) 0,transparent 65%)}.xp-card-content{position:relative;z-index:2}.xp-card-icon{font-size:13px;letter-spacing:.3em;margin-bottom:6px;opacity:.5}.xp-card-label{font-family:Cormorant Infant,Georgia,serif;font-weight:400;font-style:italic;font-size:28px;color:#f5efe6;line-height:1}.xp-card-sub{font-family:Jost,sans-serif;font-size:11px;font-weight:300;letter-spacing:.12em;color:hsla(36,43%,93%,.35);margin-top:4px;text-transform:uppercase}.xp-card:after{content:"";position:absolute;top:20px;right:20px;width:28px;height:28px;border-top:1px solid hsla(0,0%,100%,.08);border-right:1px solid hsla(0,0%,100%,.08)}.xp-features{position:relative;z-index:5;padding:0 24px 80px}.xp-features-rule{height:1px;background:linear-gradient(90deg,transparent,hsla(39,46%,61%,.2),transparent);margin-bottom:48px}.xp-feat-item{display:flex;gap:20px;align-items:flex-start;padding:0 0 36px;border-bottom:1px solid hsla(0,0%,100%,.04);margin-bottom:36px}.xp-feat-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.xp-feat-num{font-weight:300;font-style:italic;font-size:42px;line-height:1;background:linear-gradient(135deg,#c9a96e,#a07838);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;flex-shrink:0;width:36px;margin-top:-4px}.xp-feat-num,.xp-feat-title{font-family:Cormorant Infant,Georgia,serif}.xp-feat-title{font-weight:400;font-size:20px;color:#f5efe6;margin-bottom:6px;line-height:1.2}.xp-feat-desc{font-family:Jost,sans-serif;font-size:13px;font-weight:300;color:hsla(36,43%,93%,.42);line-height:1.7;letter-spacing:.02em}.xp-bottom-cta{position:relative;z-index:5;margin:0 16px 60px;padding:48px 28px;border-radius:28px;text-align:center;overflow:hidden;border:1px solid hsla(39,46%,61%,.12);background:radial-gradient(ellipse 100% 80% at 50% 0,rgba(180,120,60,.12) 0,transparent 70%),rgba(18,14,10,.8)}.xp-bottom-eyebrow{font-family:Jost,sans-serif;font-size:10px;font-weight:400;letter-spacing:.4em;text-transform:uppercase;color:hsla(39,46%,61%,.5);margin-bottom:20px}.xp-bottom-title{font-family:Cormorant Infant,Georgia,serif;font-weight:400;font-style:italic;font-size:clamp(32px,8vw,48px);color:#f5efe6;line-height:1.1;margin-bottom:28px}.xp-bottom-note{font-family:Jost,sans-serif;font-size:11px;font-weight:300;letter-spacing:.12em;color:hsla(36,43%,93%,.28);text-transform:uppercase;margin-top:18px}.xp-footer{position:relative;z-index:5;padding:0 24px 40px;display:flex;align-items:center;justify-content:space-between}.xp-footer-logo{font-family:Great Vibes,cursive;font-size:22px;background:linear-gradient(135deg,#c9a96e,#a07838);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.xp-footer-text{font-family:Jost,sans-serif;font-size:11px;font-weight:300;letter-spacing:.1em;color:hsla(36,43%,93%,.22)}