/* ===== Design Tokens — Top Psychic Advisors (Keen-inspired) ===== */
:root {
    /* --- Palette --- */
    --c-primary:      #286851;
    --c-primary-dark: #1B4D3E;
    --c-primary-light:#3A8A6A;
    --c-accent:       #D4A843;
    --c-accent-light: #E8C96A;
    --c-bg:           #F5F7FA;
    --c-surface:      #FFFFFF;
    --c-surface-alt:  #EDF2F7;
    --c-text:         #2D3748;
    --c-text-light:   #718096;
    --c-text-inv:     #FFFFFF;
    --c-border:       #E2E8F0;
    --c-border-dark:  #CBD5E0;
    --c-success:      #48BB78;
    --c-warning:      #ECC94B;
    --c-star:         #F6AD55;
    --c-footer-bg:    #1A2332;
    --c-footer-text:  #A0AEC0;

    /* --- Typography --- */
    --ff-heading: 'Playfair Display', Georgia, serif;
    --ff-body:    'Source Sans 3', 'Source Sans Pro', system-ui, sans-serif;
    --fw-normal: 400;
    --fw-medium: 500;
    --fw-semi:   600;
    --fw-bold:   700;
    --fs-xs:   .75rem;
    --fs-sm:   .875rem;
    --fs-base: 1rem;
    --fs-md:   1.125rem;
    --fs-lg:   1.25rem;
    --fs-xl:   1.5rem;
    --fs-2xl:  1.875rem;
    --fs-3xl:  2.25rem;
    --fs-4xl:  3rem;
    --fs-5xl:  3.75rem;
    --lh-tight:  1.2;
    --lh-normal: 1.6;
    --lh-relaxed:1.8;

    /* --- Spacing --- */
    --sp-1:  4px;  --sp-2:  8px;  --sp-3: 12px;
    --sp-4: 16px;  --sp-5: 20px;  --sp-6: 24px;
    --sp-8: 32px;  --sp-10:40px;  --sp-12:48px;
    --sp-16:64px;  --sp-20:80px;  --sp-24:96px;

    /* --- Layout --- */
    --max-w:       1200px;
    --max-w-narrow: 800px;
    --gutter:       24px;

    /* --- Borders & Shadows --- */
    --r-sm:  4px;
    --r-md:  8px;
    --r-lg: 12px;
    --r-xl: 16px;
    --r-full:9999px;
    --shadow-xs:  0 1px 2px rgba(0,0,0,.05);
    --shadow-sm:  0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.04);
    --shadow-md:  0 4px 6px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.04);
    --shadow-lg:  0 10px 15px rgba(0,0,0,.08), 0 4px 6px rgba(0,0,0,.04);
    --shadow-xl:  0 20px 25px rgba(0,0,0,.1), 0 10px 10px rgba(0,0,0,.04);

    /* --- Transitions --- */
    --ease: cubic-bezier(.4,0,.2,1);
    --dur:  200ms;
    --dur-slow: 350ms;
}
