@import"https://fonts.googleapis.com/css2?family=Great+Vibes&family=Inter:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap";:root{--color-bg: #fafaf8;--color-bg-alt: #f3f1ec;--color-surface: #ffffff;--color-text: #1a1a1a;--color-text-muted: #6b6b6b;--color-accent: #c9a96e;--color-accent-hover:#b8933f;--color-accent-soft: rgba(201, 169, 110, .12);--color-border: rgba(0, 0, 0, .08);--color-overlay: rgba(0, 0, 0, .55);--color-gradient-start: #1a1a1a;--color-gradient-end: #2d2d2d;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--shadow-glow: 0 0 40px rgba(201, 169, 110, .15);--font-display: "Great Vibes", cursive;--font-heading: "Playfair Display", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 5rem;--space-3xl: 8rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--transition-smooth: .7s cubic-bezier(.16, 1, .3, 1);--z-dropdown: 50;--z-sticky: 100;--z-overlay: 200;--z-modal: 300}[data-theme=dark]{--color-bg: #0f0f0f;--color-bg-alt: #1a1a1a;--color-surface: #1e1e1e;--color-text: #f0ece4;--color-text-muted: #9a9a9a;--color-accent: #d4b678;--color-accent-hover:#e0c88e;--color-accent-soft: rgba(212, 182, 120, .12);--color-border: rgba(255, 255, 255, .08);--color-overlay: rgba(0, 0, 0, .75);--color-gradient-start: #0a0a0a;--color-gradient-end: #1a1a1a;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .5);--shadow-glow: 0 0 40px rgba(212, 182, 120, .1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-weight:400;font-size:16px;line-height:1.7;color:var(--color-text);background-color:var(--color-bg);transition:background-color var(--transition-base),color var(--transition-base);overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}button{font-family:inherit;cursor:pointer;border:none;background:transparent}ul,ol{list-style:none}input,textarea{font-family:inherit;font-size:inherit}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.section{padding:var(--space-3xl) 0}.section-title{font-family:var(--font-heading);font-size:clamp(2rem,4vw,3rem);font-weight:600;color:var(--color-text);text-align:center;margin-bottom:var(--space-sm)}.section-subtitle{font-size:1rem;color:var(--color-text-muted);text-align:center;margin-bottom:var(--space-2xl);letter-spacing:.03em}.accent-line{width:60px;height:2px;background:var(--color-accent);margin:var(--space-md) auto var(--space-lg);border:none}.display-font{font-family:var(--font-display)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in-up{animation:fadeInUp var(--transition-smooth) forwards}.animate-fade-in{animation:fadeIn var(--transition-smooth) forwards}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-accent);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-accent-hover)}::selection{background:var(--color-accent);color:#fff}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}
