*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--clr-bg: #000000;--clr-deep: #040408;--clr-surface: rgba(255, 255, 255, .04);--clr-surface2: rgba(255, 255, 255, .08);--clr-border: rgba(255, 255, 255, .12);--clr-border2: rgba(255, 255, 255, .2);--clr-rose: #ff6b9d;--clr-rose-soft: #ff8fb8;--clr-lavender: #c9b1ff;--clr-aurora1: #6c3fc5;--clr-aurora2: #a855f7;--clr-aurora3: #3b82f6;--clr-gold: #f5c842;--clr-gold-soft: #fde68a;--clr-teal: #2dd4bf;--clr-text: rgba(255, 255, 255, .95);--clr-text-muted: rgba(255, 255, 255, .55);--clr-text-dim: rgba(255, 255, 255, .35);--font-serif: "Cormorant Garamond", Georgia, serif;--font-display: "Playfair Display", Georgia, serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 40px;--space-2xl: 64px;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 9999px;--glow-rose: 0 0 40px rgba(255, 107, 157, .45), 0 0 80px rgba(255, 107, 157, .2);--glow-lavender: 0 0 40px rgba(201, 177, 255, .4), 0 0 80px rgba(168, 85, 247, .2);--glow-soft: 0 8px 32px rgba(0, 0, 0, .6);--glow-card: 0 4px 24px rgba(0, 0, 0, .8), 0 0 0 1px rgba(255,255,255,.08);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-out-expo: cubic-bezier(.19, 1, .22, 1);--ease-in-expo: cubic-bezier(.95, .05, .795, .035);--dur-fast: .2s;--dur-normal: .4s;--dur-slow: .7s;--dur-slower: 1.2s}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--clr-bg);color:var(--clr-text);min-height:100dvh;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;overscroll-behavior:none;touch-action:pan-y}#root{width:100%;height:100dvh;position:relative;overflow:hidden}.glass{background:#ffffff0d;backdrop-filter:blur(20px) saturate(1.8);-webkit-backdrop-filter:blur(20px) saturate(1.8);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-lg)}.glass-strong{background:#ffffff14;backdrop-filter:blur(40px) saturate(2);-webkit-backdrop-filter:blur(40px) saturate(2);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-lg)}.font-serif{font-family:var(--font-serif)}.font-display{font-family:var(--font-display)}.font-sans{font-family:var(--font-sans)}.text-hero{font-family:var(--font-serif);font-size:clamp(2.5rem,8vw,5rem);font-weight:300;letter-spacing:-.02em;line-height:1.15}.text-title{font-family:var(--font-display);font-size:clamp(1.5rem,5vw,3rem);font-weight:400;letter-spacing:-.01em;line-height:1.2}.text-body{font-family:var(--font-sans);font-size:clamp(.9rem,2.5vw,1.1rem);font-weight:300;line-height:1.7;letter-spacing:.01em}.text-caption{font-family:var(--font-sans);font-size:.75rem;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--clr-text-muted)}.text-gradient-rose{background:linear-gradient(135deg,var(--clr-rose),var(--clr-lavender));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-gold{background:linear-gradient(135deg,var(--clr-gold-soft),var(--clr-gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;overflow:hidden}.center{display:flex;align-items:center;justify-content:center}.flex-col{display:flex;flex-direction:column}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:14px 36px;background:linear-gradient(135deg,#ff6b9d40,#c9b1ff40);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,107,157,.4);border-radius:var(--radius-full);color:var(--clr-text);font-family:var(--font-sans);font-size:.9rem;font-weight:400;letter-spacing:.08em;cursor:pointer;transition:all var(--dur-normal) var(--ease-smooth);-webkit-tap-highlight-color:transparent;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#ff6b9d26,#c9b1ff26);opacity:0;transition:opacity var(--dur-normal) var(--ease-smooth)}.btn-primary:hover:before,.btn-primary:active:before{opacity:1}.btn-primary:active{transform:scale(.97)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:10px 24px;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-full);color:var(--clr-text-muted);font-family:var(--font-sans);font-size:.8rem;font-weight:400;letter-spacing:.1em;cursor:pointer;transition:all var(--dur-normal) var(--ease-smooth);-webkit-tap-highlight-color:transparent}.btn-ghost:hover,.btn-ghost:active{border-color:#fff6;color:var(--clr-text);background:#ffffff0d}.aurora-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 50% at 20% 10%,rgba(108,63,197,.35) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 80% 20%,rgba(59,130,246,.25) 0%,transparent 60%),radial-gradient(ellipse 70% 60% at 50% 80%,rgba(168,85,247,.2) 0%,transparent 60%),#040408;z-index:0}.aurora-animated{animation:auroraShift 12s ease-in-out infinite alternate}@keyframes auroraShift{0%{filter:hue-rotate(0deg) brightness(1)}50%{filter:hue-rotate(20deg) brightness(1.1)}to{filter:hue-rotate(-15deg) brightness(.95)}}.particle-canvas{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes floatYSlow{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(2deg)}}@keyframes pulse-glow{0%,to{box-shadow:var(--glow-rose);opacity:.9}50%{box-shadow:0 0 60px #ff6b9db3,0 0 120px #ff6b9d4d;opacity:1}}@keyframes heartbeat{0%{transform:scale(1)}14%{transform:scale(1.2)}28%{transform:scale(1)}42%{transform:scale(1.15)}70%{transform:scale(1)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes rotateIn{0%{opacity:0;transform:scale(.6) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes twinkle{0%,to{opacity:.2;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}@keyframes orbitCW{0%{transform:rotate(0) translate(var(--orbit-r)) rotate(0)}to{transform:rotate(360deg) translate(var(--orbit-r)) rotate(-360deg)}}@keyframes ripple{0%{transform:scale(1);opacity:.6}to{transform:scale(2.5);opacity:0}}@keyframes confettiFall{0%{transform:translateY(-10px) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}*{scrollbar-width:none}*::-webkit-scrollbar{display:none}.safe-bottom{padding-bottom:max(var(--space-md),env(safe-area-inset-bottom))}.safe-top{padding-top:max(var(--space-md),env(safe-area-inset-top))}canvas{display:block}::selection{background:#ff6b9d4d;color:#fff}@keyframes burstOut{0%{opacity:1;transform:translate(-50%,-50%) translate(0) scale(1)}to{opacity:0;transform:translate(-50%,-50%) translate(var(--tx),var(--ty)) scale(.3)}}@keyframes orbitFloat{0%,to{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-8px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
