/* Reset & Base — Dark Luxury Theme */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
    font-family: var(--font-family);
    font-size: var(--font-size-base);
    line-height: 1.6;
    color: #ffffff;
    background-color: #111111;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
img, svg { display: block; max-width: 100%; height: auto; }
a { color: #c9a96e; text-decoration: none; transition: color var(--transition-fast); }
a:hover { color: #d4b97e; }
ul, ol { list-style: none; }
button, input, select, textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
}
button { cursor: pointer; border: none; background: none; }
table { border-collapse: collapse; width: 100%; }
h1, h2, h3, h4, h5, h6 {
    line-height: 1.2;
    font-weight: 700;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 1px;
}
h1 { font-size: var(--font-size-4xl); letter-spacing: 2px; }
h2 { font-size: var(--font-size-3xl); letter-spacing: 1.5px; }
h3 { font-size: var(--font-size-2xl); }
h4 { font-size: var(--font-size-xl); }
p { margin-bottom: var(--spacing-md); color: rgba(255,255,255,0.7); }
p:last-child { margin-bottom: 0; }
::selection {
    background: #c9a96e;
    color: #111111;
}
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #111111;
}
::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,0.15);
}
::-webkit-scrollbar-thumb:hover {
    background: rgba(255,255,255,0.25);
}
