:root{--color-bg: #0c0a09;--color-bg-alt: #161311;--color-surface: #1c1917;--color-border: #322c28;--color-text: #f5f0e8;--color-text-muted: #b8ada1;--color-gold: #c9a227;--color-gold-soft: #e3c66b;--font-display: "Playfair Display SC", Georgia, serif;--font-body: "Karla", system-ui, sans-serif;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 3rem;--space-6: 5rem;--space-7: 8rem;--radius: 2px;--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-reveal: .48s}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.15;margin:0 0 var(--space-2);color:var(--color-text)}h1{font-size:clamp(2.5rem,6vw,4.5rem);letter-spacing:.01em}h2{font-size:clamp(1.8rem,4vw,2.75rem)}p{margin:0 0 var(--space-2);color:var(--color-text-muted)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer}.container{max-width:1180px;margin:0 auto;padding:0 var(--space-3)}.eyebrow{display:inline-block;font-family:var(--font-body);font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-gold);margin-bottom:var(--space-2)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.9rem 1.75rem;border-radius:var(--radius);font-size:.95rem;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--color-gold);transition:background .2s var(--ease-out),color .2s var(--ease-out),transform .2s var(--ease-out);min-height:44px}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--color-gold);color:var(--color-bg)}.btn-primary:hover{background:var(--color-gold-soft);border-color:var(--color-gold-soft)}.btn-outline{background:transparent;color:var(--color-gold)}.btn-outline:hover{background:var(--color-gold);color:var(--color-bg)}.reveal{opacity:0;transform:scale(.94) translateY(16px);transition:opacity var(--duration-reveal) var(--ease-out),transform var(--duration-reveal) var(--ease-out);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:scale(1) translateY(0)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}::selection{background:var(--color-gold);color:var(--color-bg)}
