:root{--color-black: #4C071D;--color-black-soft: #5D0E2A;--color-cream: #F5F0E6;--color-cream-dark: #E8E0D0;--color-gold: #D4AF37;--color-gold-light: #E8C860;--color-gold-dark: #B8962E;--color-emerald: #1B4D3E;--color-emerald-light: #2A6B58;--color-burgundy: #722F37;--color-burgundy-light: #8B3A44;--color-warm-gray: #8A8278;--color-text: var(--color-cream);--color-text-muted: #B8B0A0;--font-display: "Playfair Display", Georgia, serif;--font-body: "Source Serif 4", Georgia, serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 6rem;--container-max: 1200px;--transition-fast: .2s ease;--transition-medium: .4s ease;--transition-slow: .8s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{font-family:var(--font-body);font-size:18px;line-height:1.7;color:var(--color-text);background-color:var(--color-black);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.2;letter-spacing:-.02em}h1{font-size:clamp(2.5rem,6vw,4.5rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}a{color:var(--color-gold);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-gold-light)}img{max-width:100%;height:auto;display:block}button{font-family:var(--font-display);cursor:pointer;border:none;background:none}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--spacing-sm)}.section{padding:var(--spacing-xl) 0;position:relative}.section-dark{background-color:var(--color-black-soft)}.text-gold{color:var(--color-gold)}.text-cream{color:var(--color-cream)}.text-muted{color:var(--color-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 2rem;font-size:1rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;border:2px solid var(--color-gold);background:transparent;color:var(--color-gold);transition:all var(--transition-medium);position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--color-gold);transition:left var(--transition-medium);z-index:-1}.btn:hover{color:var(--color-black)}.btn:hover:before{left:0}.btn-primary{background:var(--color-gold);color:var(--color-black)}.btn-primary:before{background:var(--color-gold-light)}.btn-large{padding:1.25rem 3rem;font-size:1.1rem}.reveal{opacity:0;transform:translateY(40px);transition:opacity var(--transition-slow),transform var(--transition-slow)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.divider{width:80px;height:2px;background:linear-gradient(90deg,transparent,var(--color-gold),transparent);margin:var(--spacing-md) auto}.divider-small{width:40px;height:1px;background:var(--color-gold)}.vignette{position:relative}.vignette:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:radial-gradient(ellipse at center,transparent 40%,rgba(0,0,0,.6) 100%)}.art-deco-border{border:1px solid var(--color-gold);position:relative}.art-deco-border:before,.art-deco-border:after{content:"◆";position:absolute;color:var(--color-gold);font-size:.75rem;top:50%;transform:translateY(-50%)}.art-deco-border:before{left:-.5rem}.art-deco-border:after{right:-.5rem}@media (max-width: 768px){:root{--spacing-xl: 4rem;--spacing-lg: 3rem}.section{padding:var(--spacing-lg) 0}h1{font-size:2.25rem}h2{font-size:1.75rem}body{font-size:16px}}
