/* ==========================================================================
   1. CORE MASTER THEME (Bacco Design System)
   ========================================================================== */
:root {
    /* Color Palette */
    --bacco-wine: #2e5a3a;         /* primary mapped to vine green */
    --bacco-wine-hover: #244a31;   /* hover darker green */
    --bacco-wine-light: #f4f6f3;   /* very light greenish */
    --bacco-gold: #c7a23a;         /* accent straw/gold */
    --bacco-gold-light: rgba(199,162,58,0.08);

    /* Neutral Shades updated to warm natural tones */
    --bacco-bg: #eef4ea;
    --bacco-surface: #f9f8f6;
    --bacco-text: #263227;
    --bacco-muted: #6b6b57;
    --bacco-border: #e2e6e0;
    --bacco-border-focus: #bfc9bf;
    
    /* Typography */
    --font-display: 'Cormorant Garamond', 'Georgia', serif;
    --font-ui: 'DM Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

    /* Structural Tokens */
    --radius-sm: 6px;
    --radius-md: 12px;
    --radius-lg: 20px;
    --radius-pill: 100px;
    
    /* Shadows */
    --shadow-sm: 0 2px 8px rgba(32, 26, 26, 0.04);
    --shadow-md: 0 10px 30px rgba(32, 26, 26, 0.06);
    --shadow-btn: 0 4px 12px rgba(46, 90, 58, 0.10);
    
    /* Motion */
    --transition: 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

*, *::before, *::after {
    box-sizing: border-box;
}

body {
    margin: 0;
    padding: 0;
    font-family: var(--font-ui);
    background-color: var(--bacco-bg);
    color: var(--bacco-text);
    min-height: 100vh;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
}

a {
    color: var(--bacco-wine);
    text-decoration: none;
    transition: color var(--transition);
}

a:hover {
    color: var(--bacco-wine-hover);
}