:root{--bg-sage-base:#e0f0e3;--bg-sage-depth:#b8ca93;--bg-sage-surface:#eef8f0;--bg-sage-elevated:#e1e4e2;--bg-sage-dark:#d5dcd1;--bg-sage-mid-dark:#c8cbac;--text-dark-primary:#0d2818;--text-dark-secondary:#1f4b2e;--text-muted:#72a781;--gold-bright:#f5d68b;--gold-base:#d4af37;--gold-deep:#b38a20;--emerald-accent:#2a5c39;--glow-gold-sunbeam:#d4af3740;--overlay-gold-border:#84a98c59;--glass-card-alpha:.1;--glass-btn-outline-alpha:.1;--glass-btn-outline-hover-alpha:.1;--glass-input-alpha:.1;--glass-audio-toggle-alpha:.1;--modal-overlay-alpha:.1;--badge-dark-alpha:.1;--badge-dark-alt-alpha:.1;--glass-blur-heavy:32px;--glass-blur-medium:20px;--glass-blur-light:16px;--glass-blur-subtle:12px;--glass-blur-minimal:10px;--glass-blur-xs:8px;--font-hero:"Cinzel Decorative", "Cormorant Garamond", serif;--font-serif:"Cormorant Garamond", Georgia, serif;--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-script:"Alex Brush", cursive;--glow-gold-soft:0 0 25px #d4af3740;--shadow-card-light:0 15px 35px #0d281814, 0 5px 15px #d4af371f;--radius-sm:10px;--radius-md:20px;--radius-lg:28px;--radius-full:9999px;--ease-out-cinematic:cubic-bezier(.16, 1, .3, 1);--ease-in-out-smooth:cubic-bezier(.65, 0, .35, 1);--transition-fast:.25s var(--ease-out-cinematic);--transition-normal:.5s var(--ease-out-cinematic);--z-background:0;--z-canvas:10;--z-content:20;--z-floating-ui:30;--z-modal:40}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);background-color:var(--bg-sage-base);color:var(--text-dark-primary);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body{background-color:var(--bg-sage-base);background-image:linear-gradient(to bottom, var(--bg-sage-surface) 0%, var(--bg-sage-base) 15%, var(--bg-sage-mid-dark) 40%, var(--bg-sage-dark) 50%, var(--bg-sage-mid-dark) 60%, var(--bg-sage-base) 85%, var(--bg-sage-surface) 100%);min-height:100vh;color:var(--text-dark-primary);background-attachment:scroll;overflow-x:hidden}body:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0000 0% 30%,#84a98c40 50%,#0000 70% 100%);position:fixed;inset:0}.font-hero{font-family:var(--font-hero)}.font-serif{font-family:var(--font-serif)}.font-sans{font-family:var(--font-sans)}.font-script{font-family:var(--font-script)}.gold-gradient-text,.reflective-text{background:linear-gradient(110deg,#0d2818 0%,#1f4b2e 25%,#2a5c39 40%,#528a62 50%,#1f4b2e 75%,#0d2818 100%) 0 0/200%;-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 2px #fff6);-webkit-background-clip:text;background-clip:text;animation:12s ease-in-out infinite reflectiveShimmer}@keyframes reflectiveShimmer{0%{background-position:200%}to{background-position:-200%}}.gold-static-text{background:linear-gradient(110deg,#0d2818 0%,#1e4d2b 30%,#2a5c39 50%,#1e4d2b 70%,#0d2818 100%);-webkit-text-fill-color:transparent;filter:drop-shadow(0 1px 2px #fff6);-webkit-background-clip:text;background-clip:text}.glass-card-minimal{background:rgba(255, 255, 255, var(--glass-card-alpha));-webkit-backdrop-filter:blur(var(--glass-blur-heavy)) saturate(210%);backdrop-filter:blur(var(--glass-blur-heavy)) saturate(210%);transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:1px solid #ffffffd9;border-radius:28px;box-shadow:inset 0 1.5px 2px #fffffff2,inset 0 -1px 2px #84a98c26,0 20px 45px -10px #0d281812}.glass-card-minimal:hover{border-color:#d4af3773;box-shadow:inset 0 1.5px 2px #fff,0 25px 50px -10px #0d28181f,0 0 20px #d4af3733}.photo-vignette-floater{aspect-ratio:4/3;filter:drop-shadow(0 15px 30px #0d28181f);border-radius:28px;width:100%;transition:transform .3s cubic-bezier(.16,1,.3,1),filter .3s;position:relative;overflow:hidden;-webkit-mask-image:radial-gradient(circle,#000 45%,#000000d9 75%,#0000 100%);mask-image:radial-gradient(circle,#000 45%,#000000d9 75%,#0000 100%)}.photo-vignette-floater:hover{filter:drop-shadow(0 20px 40px #d4af3740);transform:scale(1.03)}.btn-gold{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(var(--glass-blur-light));backdrop-filter:blur(var(--glass-blur-light));color:#fff;font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all var(--transition-fast);background:linear-gradient(135deg,#d4af37eb 0%,#b38a20fa 100%);border:1px solid #fff6;justify-content:center;align-items:center;gap:.5rem;padding:.9rem 1.85rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px 1px #fff9,0 10px 25px #d4af3759}.btn-gold:hover{transform:translateY(-2px);box-shadow:inset 0 1px 1px #fffc,0 15px 35px #d4af3780}.btn-outline{border-radius:var(--radius-full);background:rgba(255, 255, 255, var(--glass-btn-outline-alpha));-webkit-backdrop-filter:blur(var(--glass-blur-medium));backdrop-filter:blur(var(--glass-blur-medium));color:var(--text-dark-primary);font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all var(--transition-fast);border:1px solid #84a98c73;justify-content:center;align-items:center;gap:.5rem;padding:.9rem 1.85rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px 1px #fffc,0 8px 20px #0d28180a}.btn-outline:hover{border-color:var(--gold-deep);background:rgba(255, 255, 255, var(--glass-btn-outline-hover-alpha));box-shadow:0 12px 25px #d4af3733}input,select,textarea{-webkit-backdrop-filter:blur(var(--glass-blur-light));backdrop-filter:blur(var(--glass-blur-light));transition:border-color var(--transition-fast), box-shadow var(--transition-fast);color:var(--text-dark-primary)!important;background:rgba(255, 255, 255, var(--glass-input-alpha))!important;border:1px solid #84a98c59!important;border-radius:16px!important;box-shadow:inset 0 1px 2px #0d281808!important}input:focus,select:focus,textarea:focus{border-color:var(--gold-base)!important;box-shadow:0 0 0 3px #d4af3740!important}input::placeholder,textarea::placeholder{color:var(--text-muted)!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
