:root{--color-primary:#c17f59;--color-primary-dark:#9e5b37;--color-primary-light:#df9b75;--color-secondary:#7d8f79;--color-bg:#faf7f2;--color-surface:#fff;--color-surface-glass:#ffffffc7;--color-surface-card:#fefcf9e0;--color-text-main:#1f1916;--color-text-muted:#6b615a;--color-accent:#efe7de;--color-gold:#d4af37;--color-gold-light:#f7e7b8;--color-gold-dark:#9e7d23;--color-gold-glow:#d4af3738;--font-main:var(--font-inter), system-ui, -apple-system, sans-serif;--font-serif:var(--font-cormorant), var(--font-playfair), Georgia, serif;--font-display:var(--font-playfair), Georgia, serif;--spacing-xs:.5rem;--spacing-sm:1rem;--spacing-md:2rem;--spacing-lg:4rem;--spacing-xl:8rem;--border-radius:12px;--border-radius-pill:9999px;--transition-fast:.2s cubic-bezier(.16, 1, .3, 1);--transition-slow:.5s cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}html{background-color:#faf7f2}body{max-width:100vw;color:var(--color-text-main);font-family:var(--font-main);-webkit-font-smoothing:antialiased;background-color:#0000;line-height:1.65;position:relative;overflow-x:hidden}main{z-index:1;position:relative}a{color:inherit;transition:color var(--transition-slow);text-decoration:none}::selection{background:var(--color-primary);color:#fff}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);letter-spacing:.02em;margin-bottom:var(--spacing-sm);color:var(--color-text-main);font-weight:500}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.container{width:100%;max-width:1240px;padding:0 var(--spacing-sm);margin:0 auto}.btn-primary{color:#fff;border-radius:var(--border-radius-pill);letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(135deg,#c17f59 0%,#a86440 100%);justify-content:center;align-items:center;gap:8px;padding:.85rem 1.85rem;font-size:.88rem;font-weight:500;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 16px #c17f5947,0 0 0 1px #d4af3726}.btn-primary:after{content:"";pointer-events:none;background:linear-gradient(60deg,#0000,#ffffff38,#0000);width:200%;height:200%;transition:transform .75s;position:absolute;top:-50%;left:-50%;transform:rotate(30deg)translateY(-100%)}.btn-primary:hover:after{transform:rotate(30deg)translateY(100%)}.btn-primary:hover{color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #c17f5966,0 0 0 1px #d4af3766}.btn-primary:active{transition:all .1s;transform:translateY(1px)scale(.98);box-shadow:0 2px 8px #c17f5933}.btn-secondary{-webkit-backdrop-filter:blur(10px);color:var(--color-text-main);border-radius:var(--border-radius-pill);letter-spacing:.08em;text-transform:uppercase;background:#ffffffb8;border:1px solid #c17f5959;justify-content:center;align-items:center;gap:8px;padding:.85rem 1.85rem;font-size:.88rem;font-weight:500;text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1);display:inline-flex}.btn-secondary:hover{border-color:var(--color-primary);color:var(--color-text-main);background:#fffffff2;transform:translateY(-2px);box-shadow:0 6px 20px #c17f5926}html{scroll-behavior:smooth}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes heroFadeIn{0%{opacity:0}to{opacity:1}}.hero-animate-title{animation:1s cubic-bezier(.16,1,.3,1) .2s both heroFadeUp}.hero-animate-subtitle{animation:1s cubic-bezier(.16,1,.3,1) .4s both heroFadeUp}.hero-animate-cta{animation:1s cubic-bezier(.16,1,.3,1) .6s both heroFadeUp}.hero-animate-image{animation:1.2s cubic-bezier(.16,1,.3,1) .3s both heroFadeIn}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{border-radius:var(--border-radius);background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%) 0 0/200% 100%;animation:1.5s infinite shimmer}.back-to-top{background:var(--color-primary);color:#fff;cursor:pointer;opacity:0;z-index:1000;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;transition:opacity .3s,transform .3s,background .2s;display:flex;position:fixed;bottom:24px;left:24px;transform:translateY(20px);box-shadow:0 4px 12px #c17f5966}.back-to-top.visible{opacity:1;transform:translateY(0)}.back-to-top:hover{background:#a86a48;transform:translateY(-2px);box-shadow:0 6px 16px #c17f5980}.announcementBar{background:linear-gradient(90deg, #a86a48, var(--color-primary), #d4976b, var(--color-primary), #a86a48);color:#fff;text-align:center;padding:10px var(--spacing-sm);letter-spacing:.05em;z-index:101;background-size:300% 100%;font-size:.85rem;font-weight:500;animation:8s infinite announcementShimmer;position:relative;overflow:hidden}@keyframes announcementShimmer{0%,to{background-position:0%}50%{background-position:100%}}.page-transition-enter{animation:.8s cubic-bezier(.16,1,.3,1) forwards pageFadeIn}@keyframes pageFadeIn{0%{opacity:0;filter:blur(5px);transform:translateY(15px)}to{opacity:1;filter:blur();transform:translateY(0)}}.section-ornament{opacity:.75;justify-content:center;align-items:center;gap:1.25rem;padding:2.5rem 0;display:flex}.section-ornament:before,.section-ornament:after{content:"";background:linear-gradient(90deg,#0000,#d4af3799,#0000);width:120px;height:1px}.section-ornament .ornament-icon{color:var(--color-gold);text-shadow:0 0 10px #d4af3766;font-size:.85rem;animation:3.5s ease-in-out infinite ornamentPulse}@keyframes ornamentPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.ambient-particles{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.ambient-particle{animation:floatParticle var(--duration,12s) ease-in-out infinite;animation-delay:var(--delay,0s);opacity:0;background:radial-gradient(circle,#c17f5999 0%,#c17f5900 70%);border-radius:50%;position:absolute}.ambient-particles.festive-sparks .ambient-particle{filter:drop-shadow(0 0 6px #ffd700cc);background:radial-gradient(circle,#ffd700e6 0%,#ff9f1c80 45%,#d4af3700 70%)}@keyframes floatParticle{0%{opacity:0;transform:translateY(100%)scale(0)}10%{opacity:.7}50%{opacity:.4;transform:translateY(-50vh) scale(1) translateX(var(--drift,20px))}to{opacity:0;transform:translateY(-100vh) scale(.5) translateX(var(--drift,20px))}}.gradient-border-glow{position:relative}.gradient-border-glow:before{content:"";border-radius:inherit;z-index:-1;filter:blur(8px);opacity:.6;background:linear-gradient(135deg,#c17f5980,#d4976b4d,#8a9a864d,#c17f5980) 0 0/300% 300%;animation:6s infinite gradientGlow;position:absolute;inset:-3px}@keyframes gradientGlow{0%,to{background-position:0%}50%{background-position:100%}}.stagger-grid>*{opacity:0;animation:.6s cubic-bezier(.16,1,.3,1) forwards staggerIn;transform:translateY(30px)}.stagger-grid>:first-child{animation-delay:50ms}.stagger-grid>:nth-child(2){animation-delay:.1s}.stagger-grid>:nth-child(3){animation-delay:.15s}.stagger-grid>:nth-child(4){animation-delay:.2s}.stagger-grid>:nth-child(5){animation-delay:.25s}.stagger-grid>:nth-child(6){animation-delay:.3s}.stagger-grid>:nth-child(7){animation-delay:.35s}.stagger-grid>:nth-child(8){animation-delay:.4s}@keyframes staggerIn{to{opacity:1;transform:translateY(0)}}.text-gradient{background:linear-gradient(135deg,#1f1916 0%,#a86440 38%,#d4af37 72%,#8c5332 100%) 0 0/200%;-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;animation:6s infinite textGradientFlow}@keyframes textGradientFlow{0%,to{background-position:0%}50%{background-position:200%}}
