@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Outfit:wght@300;400;500;600;700;800;900&family=Noto+Sans+Arabic:wght@300;400;500;600;700;800;900&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,600;1,700&family=Cairo:wght@300;400;500;600;700;800;900&display=swap');[x-cloak]{display:none !important}:root{--primary:#6B2737; --accent:#C9A84C; --burgundy:#6B2737; --gold:#C9A84C; --goldLight:#E8C97A; --rose:#9D4B6B; --cream:#FDF6EE; --bg:#FDF6EE; --text:#3D1A24; --text-muted:#8E7A7A; --lux-pink:#FADADD; --lux-rose:#E8AEB7; --lux-purple:#D8B4F8; --lux-white:#FFFFFF; --lux-gray:#F5F5F5; --lux-text:#5a3a4a; --lux-text-light:#8a6a7a; --lux-text-subtle:#c4a0b0; --lux-gold:#c9a96e; --lux-gold-light:#e8c98d; --lux-gradient:linear-gradient(135deg,#FADADD 0%,#E8AEB7 50%,#D8B4F8 100%); --lux-gradient-soft:linear-gradient(160deg,#fff5f7 0%,#fce8ec 30%,#f0d8f8 70%,#e8d0f8 100%); --lux-gradient-card:linear-gradient(135deg,rgba(255,255,255,0.7),rgba(255,255,255,0.4)); --lux-gradient-btn:linear-gradient(135deg,#E8AEB7,#D8B4F8); --lux-gradient-gold:linear-gradient(135deg,#c9a96e,#e8c98d,#c9a96e); --lux-shadow:0 8px 40px rgba(232,174,183,0.25); --lux-shadow-lg:0 20px 60px rgba(216,180,248,0.2); --lux-shadow-card:0 4px 24px rgba(90,58,74,0.08); --lux-shadow-btn:0 8px 30px rgba(216,180,248,0.5); --lux-radius:20px; --lux-radius-sm:12px; --lux-radius-xl:32px; --lux-radius-full:100px}.font-luxury{font-family:'Playfair Display',Georgia,serif}.font-arabic{font-family:'Cairo','Noto Sans Arabic',sans-serif}.lux-glass{background:rgba(255,255,255,0.55); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,0.7); box-shadow:var(--lux-shadow-card)}.lux-glass-strong{background:rgba(255,255,255,0.75); -webkit-backdrop-filter:blur(30px); backdrop-filter:blur(30px); border:1px solid rgba(255,255,255,0.9); box-shadow:var(--lux-shadow)}.lux-bg{background:var(--lux-gradient-soft); min-height:100dvh; min-height:calc(var(--vh,1vh) * 100)}.lux-text{color:var(--lux-text)}.lux-text-light{color:var(--lux-text-light)}.lux-text-subtle{color:var(--lux-text-subtle)}.lux-text-gradient{background:linear-gradient(135deg,#c9869a,#a87bc8); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text}.lux-gold-text{background:var(--lux-gradient-gold); background-size:200%; -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text}.lux-divider{display:flex; align-items:center; gap:1rem; margin:2rem 0}.lux-divider::before,.lux-divider::after{content:''; flex:1; height:1px; background:linear-gradient(90deg,transparent,rgba(232,174,183,0.6),transparent)}.lux-btn{background:var(--lux-gradient-btn); color:white; font-weight:600; padding:1rem 2.5rem; border-radius:var(--lux-radius-full); border:none; cursor:pointer; transition:all 0.4s cubic-bezier(0.4,0,0.2,1); box-shadow:var(--lux-shadow-btn); font-size:1rem; display:inline-flex; align-items:center; gap:0.6rem; text-decoration:none; letter-spacing:0.5px; position:relative; overflow:hidden}.lux-btn::before{content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,255,255,0.3),transparent); opacity:0; transition:opacity 0.3s ease}.lux-btn:hover{transform:translateY(-3px) scale(1.02); box-shadow:0 16px 40px rgba(216,180,248,0.6)}.lux-btn:hover::before{opacity:1}.lux-count-card{background:rgba(255,255,255,0.6); backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,0.8); border-radius:var(--lux-radius); padding:1.25rem 1rem; text-align:center; box-shadow:0 4px 20px rgba(232,174,183,0.2); min-width:75px}.lux-input{width:100%; background:rgba(255,255,255,0.7); border:1.5px solid rgba(232,174,183,0.4); border-radius:var(--lux-radius-sm); padding:0.85rem 1.25rem; color:var(--lux-text); font-size:0.95rem; font-family:inherit; transition:all 0.3s ease; outline:none}.lux-input:focus{border-color:var(--lux-purple); background:rgba(255,255,255,0.9); box-shadow:0 0 0 3px rgba(216,180,248,0.2)}.lux-input::placeholder{color:var(--lux-text-subtle)}.lux-gallery-img{overflow:hidden; border-radius:var(--lux-radius); box-shadow:var(--lux-shadow-card)}.lux-gallery-img img{width:100%; height:100%; object-fit:cover; transition:transform 0.5s cubic-bezier(0.4,0,0.2,1)}.lux-gallery-img:hover img{transform:scale(1.08)}@keyframes lux-float{0%,100%{transform:translateY(0px) rotate(0deg)}33%{transform:translateY(-10px) rotate(1deg)}66%{transform:translateY(-5px) rotate(-1deg)}}@keyframes lux-float-slow{0%,100%{transform:translateY(0px)}50%{transform:translateY(-16px)}}@keyframes lux-petal{0%{transform:translateY(-10px) rotate(0deg); opacity:1}100%{transform:translateY(100dvh) rotate(720deg); opacity:0}}@keyframes lux-shimmer-gold{0%{background-position:-200% center}100%{background-position:200% center}}@keyframes lux-pulse-rose{0%,100%{box-shadow:0 0 0 0 rgba(232,174,183,0.4)}50%{box-shadow:0 0 0 12px rgba(232,174,183,0)}}.lux-animate-float{animation:lux-float-slow 5s ease-in-out infinite}.lux-animate-float-delay{animation:lux-float 6s ease-in-out infinite 1s}.lux-animate-pulse-rose{animation:lux-pulse-rose 2.5s ease-in-out infinite}.lux-petal{position:absolute; font-size:1.2rem; pointer-events:none; animation:lux-petal linear infinite; opacity:0.7}.lux-page::-webkit-scrollbar{width:5px}.lux-page::-webkit-scrollbar-track{background:#fce8ec}.lux-page::-webkit-scrollbar-thumb{background:var(--lux-rose); border-radius:3px}*{box-sizing:border-box; margin:0; padding:0}html{}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background-color:var(--bg); color:var(--text); font-family:'Outfit',sans-serif; line-height:1.6; overflow-x:hidden; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; -webkit-overflow-scrolling:touch; -webkit-tap-highlight-color:transparent}[dir="rtl"],[dir="rtl"] body,[dir="rtl"] *{font-family:'Cairo','Noto Sans Arabic',sans-serif; letter-spacing:0}[dir="rtl"] h1,[dir="rtl"] h2,[dir="rtl"] h3,[dir="rtl"] h4{font-family:'Cairo',sans-serif; font-style:normal; line-height:1.5; padding-bottom:0.1em}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--primary); border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--primary-light)}.glass{background:rgba(255,255,255,0.6); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,0.75)}.glass-card{background:rgba(255,255,255,0.7); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); border:1px solid var(--bg-border); border-radius:var(--radius-lg); box-shadow:var(--shadow-card)}.gradient-text{background:var(--gradient-primary); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text}.btn-primary{background:linear-gradient(135deg,#6B2737,#9D4B6B,#C9A84C); color:white; font-weight:700; padding:0.75rem 1.75rem; border-radius:100px; border:none; cursor:pointer; transition:all 0.35s ease; box-shadow:0 4px 20px rgba(107,39,55,0.35); font-size:0.9rem; display:inline-flex; align-items:center; gap:0.5rem; text-decoration:none; letter-spacing:0.5px}.btn-primary:hover{transform:translateY(-2px); box-shadow:0 10px 35px rgba(107,39,55,0.5)}.btn-secondary{background:transparent; color:var(--primary); font-weight:600; padding:0.75rem 1.75rem; border-radius:100px; border:1.5px solid rgba(107,39,55,0.3); cursor:pointer; transition:all 0.3s ease; font-size:0.9rem; display:inline-flex; align-items:center; gap:0.5rem; text-decoration:none}.btn-secondary:hover{background:rgba(107,39,55,0.06); border-color:var(--primary); transform:translateY(-2px)}.input-field{width:100%; background:rgba(255,255,255,0.75); border:1.5px solid rgba(201,168,76,0.3); border-radius:var(--radius-sm); padding:0.75rem 1rem; color:var(--text); font-size:0.95rem; font-family:inherit; transition:all 0.3s ease; outline:none}.input-field:focus{border-color:var(--accent); background:#FFFFFF; box-shadow:0 0 0 3px rgba(201,168,76,0.15)}.input-field::placeholder{color:var(--text-subtle)}.form-label{display:block; font-size:0.85rem; font-weight:500; color:var(--text-muted); margin-bottom:0.4rem}.section{padding:6rem 0}.container{max-width:1200px; margin:0 auto; padding:0 1.5rem}@keyframes float{0%,100%{transform:translateY(0px)}50%{transform:translateY(-12px)}}@keyframes pulse-glow{0%,100%{box-shadow:0 0 20px rgba(124,58,237,0.3)}50%{box-shadow:0 0 40px rgba(124,58,237,0.6)}}@keyframes shimmer{0%{background-position:-200% center}100%{background-position:200% center}}@keyframes fadeInUp{from{opacity:0; transform:translateY(30px)}to{opacity:1; transform:translateY(0)}}@keyframes gradient-shift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}.animate-float{animation:float 4s ease-in-out infinite; will-change:transform}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite; will-change:box-shadow}.animate-fadeInUp{animation:fadeInUp 0.6s ease-out forwards; will-change:transform,opacity}.reveal{opacity:0; transform:translateY(30px); transition:all 0.8s cubic-bezier(0.22,1,0.36,1); will-change:transform,opacity; backface-visibility:hidden; perspective:1000px}.reveal.active{opacity:1; transform:translateY(0)}.badge{display:inline-flex; align-items:center; gap:0.4rem; background:rgba(124,58,237,0.15); border:1px solid rgba(124,58,237,0.3); color:var(--primary-light); padding:0.35rem 0.9rem; border-radius:100px; font-size:0.8rem; font-weight:500}.divider{height:1px; background:var(--bg-border); margin:2rem 0}[dir="rtl"] .input-field{text-align:right}html{-webkit-text-size-adjust:100%; -moz-text-size-adjust:100%; text-size-adjust:100%}img,video,svg{max-width:100%; height:auto}@media (max-width:480px){.section{padding:2.5rem 0}.container{padding:0 0.75rem}.btn-primary, .btn-secondary{padding:0.65rem 1.25rem; font-size:0.82rem; width:100%; justify-content:center}.input-field{padding:0.65rem 0.85rem; font-size:0.9rem}.lux-btn{padding:0.85rem 1.5rem; font-size:0.9rem; width:100%; justify-content:center}}@media (max-width:768px){.section{padding:3rem 0}.container{padding:0 1rem}h1{font-size:clamp(1.8rem,6vw,2.5rem) !important}h2{font-size:clamp(1.3rem,4vw,1.8rem) !important}.builder-layout{flex-direction:column !important}.builder-form-panel{width:100% !important; max-width:100% !important; min-width:100% !important; border-right:none !important; border-bottom:1px solid rgba(201,168,76,0.15) !important}.builder-form-inner{padding:1.25rem !important}.builder-preview-panel{display:none !important}.builder-preview-panel.show-mobile{display:flex !important; padding:1.5rem 1rem !important}.auth-container{padding:1.5rem !important}.auth-card{padding:2rem 1.25rem !important; border-radius:20px !important}.dashboard-grid{grid-template-columns:1fr !important}.nav-links{gap:0.5rem !important}.nav-links a, .nav-links button{font-size:0.75rem !important; padding:0.4rem 0.8rem !important}}@media (min-width:769px) and (max-width:1024px){.section{padding:4rem 0}.container{padding:0 1.5rem}.builder-form-panel{max-width:420px !important; min-width:300px !important}.builder-form-inner{padding:1.75rem !important}}@media (min-width:1025px){.container{max-width:1200px}}@media (hover:none) and (pointer:coarse){button,a,input,select,textarea{min-height:44px; touch-action:manipulation}.btn-primary, .btn-secondary, .lux-btn{min-height:48px}.btn-primary:hover, .btn-secondary:hover, .lux-btn:hover{transform:none; box-shadow:var(--lux-shadow-btn)}}button,a[href],[role="button"]{touch-action:manipulation}@supports (padding:env(safe-area-inset-bottom)){.builder-nav-bottom{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.bottom-nav-safe{padding-bottom:env(safe-area-inset-bottom)}}.petal,.arabic-sparkle,.animate-float,.lux-petal{transform:translateZ(0); backface-visibility:hidden; will-change:transform,opacity}@media (prefers-reduced-motion:reduce){.petal, .arabic-sparkle, .lux-petal, .animate-float, .lux-animate-float, .lux-animate-float-delay{animation:none !important}.reveal, .reveal-intro, .reveal-intro-delay-1, .reveal-intro-delay-2, .reveal-intro-delay-3{opacity:1 !important; transform:none !important; transition:none !important}}@media (max-height:500px) and (orientation:landscape){.section{padding:2rem 0}.hero-section{min-height:auto !important; padding:3rem 2rem !important}}@media print{nav,.builder-form-panel,button,.rsvp-section,audio{display:none !important}body{background:white !important}}