:root {
    --bg-page: #F6F5F3;
    --bg-card: #FFFFFF;
    --bg-card-alt: #ECEAE5;
    --bg-footer: #1C1917;
    --text-primary: #1C1917;
    --text-secondary: #57534E;
    --text-muted: #A8A29E;
    --text-on-dark: #F6F5F3;
    --accent: #8B4049;
    --accent-hover: #722D3A;
    --accent-light: #F3EAEA;
    --accent-gold: #C9A96E;
    --border: #E5E0D8;
    --border-hover: #C9C1B5;
}

/* Scroll animations */
.animate-in {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.animate-in.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Gold rule divider */
.gold-rule {
    border: none;
    height: 1px;
    background: var(--accent-gold);
    opacity: 0.4;
}

/* Header behavior */
.header-hidden {
    transform: translateY(-100%);
}

.header-visible {
    transform: translateY(0);
}

header {
    transition: transform 0.3s ease;
}

/* Toast notification */
.toast {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    padding: 1rem 1.5rem;
    border-radius: 2px;
    color: white;
    font-size: 0.875rem;
    z-index: 9999;
    opacity: 0;
    transform: translateY(1rem);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.toast.show {
    opacity: 1;
    transform: translateY(0);
}

.toast-success { background: #3A101C; }
.toast-error { background: #DC2626; }

/* Button styles */
.btn-primary {
    background: var(--accent);
    color: white;
    padding: 0.75rem 2rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-size: 0.8125rem;
    transition: background 0.2s ease;
    border: none;
    cursor: pointer;
}

.btn-primary:hover {
    background: var(--accent-hover);
}

.btn-outline {
    background: transparent;
    color: var(--accent);
    padding: 0.75rem 2rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    font-size: 0.8125rem;
    transition: all 0.2s ease;
    border: 1px solid var(--accent);
    cursor: pointer;
}

.btn-outline:hover {
    background: var(--accent);
    color: white;
}
