/* ============================================================
   SH BARBERÍA MARBELLA — design tokens
   editorial barber × marbella
   type: Geist (matches client site shbarberiamarbella.es)
   accent: Tailwind green-400 / green-500 (matches client brand)
   ============================================================ */

:root {
  /* color */
  --ink:        #0e0e0c;
  --ink-soft:   #1a1814;
  --ink-line:   #2a2620;
  --crudo:      #f5efe6;
  --crudo-2:    #ebe3d4;
  --crudo-line: #d6cab2;

  /* brand greens — Tailwind v4 oklch (mirror of client identity) */
  --green-400:  oklch(79.2% 0.209 151.711);   /* primary accent — vivid */
  --green-500:  oklch(72.3% 0.219 149.579);   /* hover / active */
  --green-600:  oklch(62.7% 0.194 149.214);   /* deep / pressed */

  /* legacy aliases — keep so any inline reference still resolves */
  --bronze:     var(--green-500);
  --bronze-2:   var(--green-400);
  --bronze-line:var(--green-600);
  --bottle:     #103a25;
  --blood:      #6b1a1f;

  /* surface tokens (light theme) */
  --bg:         var(--crudo);
  --bg-2:       var(--crudo-2);
  --fg:         var(--ink);
  --fg-soft:    color-mix(in oklab, var(--ink) 75%, var(--crudo));
  --fg-mute:    color-mix(in oklab, var(--ink) 50%, var(--crudo));
  --line:       color-mix(in oklab, var(--ink) 18%, transparent);
  --accent:     var(--green-500);
  --accent-deep:var(--green-600);
  --accent-vivid: var(--green-400);

  /* type — Geist + Geist Mono (matches client site shbarberiamarbella.es) */
  --f-display: "Geist", "Geist Sans", system-ui, -apple-system, "Helvetica Neue", sans-serif;
  --f-body:    "Geist", "Geist Sans", system-ui, -apple-system, "Helvetica Neue", sans-serif;
  --f-mono:    "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;

  /* scale (mobile first, fluid) */
  --t-mono: clamp(.68rem, .60rem + .25vw, .78rem);
  --t-body: clamp(.95rem, .9rem + .25vw, 1.05rem);
  --t-lead: clamp(1.1rem, 1rem + .6vw, 1.35rem);
  --t-h3:   clamp(1.4rem, 1.2rem + .9vw, 1.95rem);
  --t-h2:   clamp(2.1rem, 1.6rem + 2.3vw, 3.4rem);
  --t-h1:   clamp(3.4rem, 2.4rem + 6vw, 8rem);
  --t-mega: clamp(5rem, 3rem + 10vw, 12rem);

  /* layout */
  --max:    1400px;
  --pad-x:  clamp(1.25rem, 4vw, 3rem);
  --gap:    clamp(1rem, 2vw, 1.75rem);

  /* motion */
  --ease:        cubic-bezier(.2, .8, .2, 1);
  --ease-out:    cubic-bezier(.16, 1, .3, 1);
  --t-fast:  .25s;
  --t-med:   .55s;
  --t-slow:  1.1s;

  /* radius */
  --r:    2px;
  --r-md: 6px;
  --r-lg: 14px;

  color-scheme: light;
}

/* dark variant for hero/footer panels */
.is-dark {
  --bg:      var(--ink);
  --bg-2:    var(--ink-soft);
  --fg:      var(--crudo);
  --fg-soft: color-mix(in oklab, var(--crudo) 85%, var(--ink));
  --fg-mute: color-mix(in oklab, var(--crudo) 55%, var(--ink));
  --line:    color-mix(in oklab, var(--crudo) 22%, transparent);
  --accent:  var(--green-400);
  --accent-vivid: var(--green-400);
  color-scheme: dark;
}
