/**
 * Propresent — Design Tokens
 * Thème blanc premium — immobilier de prestige
 */

:root {
    /* ── Fonds ── */
    --c-bg:          #ffffff;
    --c-bg-alt:      #f7f7f7;
    --c-surface:     #ffffff;
    --c-elevated:    #ffffff;

    /* ── Texte ── */
    --c-text:        #1a1a1a;
    --c-text-muted:  rgba(26, 26, 26, 0.68);
    --c-text-faint:  rgba(26, 26, 26, 0.1);

    /* ── Texte sur fond sombre / images ── */
    --c-on-dark:         #ffffff;
    --c-on-dark-muted:   rgba(255, 255, 255, 0.82);

    /* ── Accent sombre (boutons, icônes) ── */
    --c-inverse:     #1a1a1a;

    /* Aliases (compatibilité) */
    --c-void:        var(--c-bg);
    --c-deep:        var(--c-bg-alt);
    --c-white:       var(--c-text);
    --c-white-dim:   var(--c-text-muted);
    --c-white-ghost: var(--c-text-faint);

    /* ── Bordures ── */
    --c-border:      rgba(26, 26, 26, 0.08);
    --c-border-hi:   rgba(26, 26, 26, 0.14);

    /* ── Accents ── */
    --c-champagne:   #c9a87c;
    --c-copper:      #9a7348;
    --c-copper-dim:  rgba(154, 115, 72, 0.15);
    --c-copper-glow: rgba(154, 115, 72, 0.1);

    --c-azure:       #5a7f96;
    --c-mist:        #7a8fa3;

    /* ── Gradients ── */
    --grad-hero:     linear-gradient(180deg, rgba(26,26,26,0.45) 0%, rgba(26,26,26,0.2) 38%, rgba(26,26,26,0.4) 72%, rgba(255,255,255,0.98) 100%);
    --grad-glass:    linear-gradient(135deg, rgba(255,255,255,0.98) 0%, rgba(255,255,255,0.88) 100%);
    --grad-glow:     radial-gradient(ellipse at 50% 0%, rgba(154,115,72,0.07) 0%, transparent 65%);
    --grad-mesh:     radial-gradient(at 20% 30%, rgba(90,127,150,0.04) 0%, transparent 50%),
                     radial-gradient(at 80% 70%, rgba(154,115,72,0.04) 0%, transparent 50%);

    /* ── Typographie ── */
    --font-display:  'Syne', sans-serif;
    --font-body:     'DM Sans', sans-serif;
    --font-serif:    'Cormorant Garamond', Georgia, serif;

    --fs-display:    clamp(3.5rem, 9vw, 8rem);
    --fs-h1:         clamp(2.5rem, 5vw, 4.5rem);
    --fs-h2:         clamp(2rem, 3.5vw, 3.25rem);
    --fs-h3:         clamp(1.25rem, 2vw, 1.75rem);
    --fs-body:       clamp(0.9375rem, 1.1vw, 1.0625rem);
    --fs-small:      0.8125rem;
    --fs-label:      0.6875rem;

    --lh-tight:      1.05;
    --lh-snug:       1.25;
    --lh-body:       1.75;
    --ls-wide:       0.18em;
    --ls-ultra:      0.35em;

    /* ── Espacements ── */
    --space-xs:   0.5rem;
    --space-sm:   1rem;
    --space-md:   1.5rem;
    --space-lg:   2.5rem;
    --space-xl:   4rem;
    --space-2xl:  6rem;
    --space-3xl:  10rem;
    --space-section: clamp(5rem, 10vw, 10rem);

    /* ── Layout ── */
    --container:    1320px;
    --container-narrow: 900px;
    --nav-height:   88px;
    --radius-sm:    6px;
    --radius-md:    12px;
    --radius-lg:    20px;
    --radius-xl:    32px;

    /* ── Glass ── */
    --glass-bg:     rgba(255, 255, 255, 0.94);
    --glass-border: rgba(26, 26, 26, 0.06);
    --glass-blur:   20px;

    /* ── Ombres ── */
    --shadow-soft:  0 2px 20px rgba(26, 26, 26, 0.05);
    --shadow-glow:  0 8px 28px rgba(154, 115, 72, 0.1);
    --shadow-card:  0 12px 40px rgba(26, 26, 26, 0.06);

    /* ── Motion ── */
    --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
    --ease-in-out:   cubic-bezier(0.65, 0, 0.35, 1);
    --dur-fast:      0.35s;
    --dur-base:      0.6s;
    --dur-slow:      1.1s;

    /* ── Z-index ── */
    --z-nav:     900;
    --z-overlay: 800;
    --z-cursor:  9999;
}
