/* ═══ GENERATED from brand.json v0.1.0 (Migsy’s Electrical, as_of 2026-11-06) ═══
   Emitted by packages/tokens/build.mjs — DO NOT HAND-EDIT (ADR-0008/ADR-0022).
   Edit brand.json and regenerate.

   NOTE FOR THE GENERATOR AUTHOR: this file is the EXPECTED OUTPUT for the
   v0.1.0 kit — use it as the build fixture. Two behaviours it depends on:

   Unpublished preview palette. Owner approval is still required before production use.
   ═══ */

:root {
  /* ── PRIMARY ───────────────────────────────────────────────────── */
  --primary:             #c72435;
  --primary-hover:       #a81c2c;
  --primary-dark:        #a3182a;
  --primary-light:       #ef4353;
  --primary-ultra-dark:  #65121f;
  --primary-ultra-light: #f8e8eb;

  /* ── BASE ──────────────────────────────────────────────────────── */
  --base:             #111215;
  --base-dark:        #202227;
  --base-light:       #f2f3f4;
  --base-ultra-dark:  #090a0c;
  --base-ultra-light: #ffffff;

  /* ── TEXT + SURFACE + LINE ─────────────────────────────────────── */
  --text-light:       #ffffff;
  --text-light-muted: rgb(255 255 255 / 0.72);
  --text-light-faint: rgb(255 255 255 / 0.55);
  --text:             #f8f9f9;

  --photo-scrim:         rgb(0 0 0 / .8);
  --dialog-scrim:        rgb(0 0 0 / .85);
  --review-shadow-color: rgb(28 38 53 / .09);

  --line-on-light: rgb(0 0 0 / 0.08);
  --line-on-dark:  rgb(255 255 255 / 0.10);
  --border:        1px solid rgb(0 0 0 / 0.08);
  --body-bg:       var(--base);

  /* ── TYPOGRAPHY — from kit overrides, NOT kd-defaults ───────────── */
  --font-text:    'DM Sans', Arial, sans-serif;
  --font-heading: 'DM Sans', Arial, sans-serif;
  --font-display: var(--font-heading);
  --font-mono:    ui-monospace, SFMono-Regular, Menlo, monospace;

  --fw-regular: 400; --fw-medium: 500; --fw-semibold: 600;
  --fw-bold: 700;    --fw-black: 800;

  --text-xs: .75rem;
  --text-s:  .875rem;
  --text-m:  1rem;
  --text-l:  1.125rem;
  --text-xl: 1.5rem;
  --text-xxl: clamp(2.1875rem, 4vw, 3.6875rem);
  --text-display: clamp(2.875rem, 5.3vw, 5.125rem);

  --lh-heading: 1.08; --lh-body: 1.65;

  /* ── SPACE ─────────────────────────────────────────────────────── */
  --space-2xs: .35rem;
  --space-xs:  .65rem;
  --space-s:   1rem;
  --space-m:   1.6rem;
  --space-l:   2.6rem;
  --space-xl:  4rem;
  --space-2xl: 6.5rem;
  --space-xxs: var(--space-2xs);
  --space-xxl: var(--space-2xl);
  --section-space-s: 3.75rem;
  --section-space-m: 4.6875rem;
  --section-space-l: 6.25rem;

  /* ── LAYOUT / UI ───────────────────────────────────────────────── */
  --content-width:        100rem;
  --content-width-wide:   100rem;
  --content-width-narrow: 62.5rem;
  --gutter:               5%;

  --radius-s:  2px;
  --radius:    2px;
  --radius-m:  2px;  /* fx-contract alias */
  --radius-l:  4px;
  --radius-xl: 4px;

  --shadow-s: none;
  --shadow-m: 0 8px 24px rgb(0 0 0 / .14);
  --shadow-l: 0 18px 50px rgb(0 0 0 / .2);
  --box-shadow-s: var(--shadow-s);
  --box-shadow-2: var(--shadow-m);  /* fx-contract name */
  --box-shadow-m: var(--shadow-m);
  --box-shadow-l: var(--shadow-l);

  --base-radius:    var(--radius);
  --base-radius-s:  var(--radius-s);
  --base-radius-l:  var(--radius-l);
  --base-radius-xl: var(--radius-xl);
  --page: #111215;
  --toolbar: #292b2f;
  --toolbar-text: #d4d5d9;
  --border-dark: #33353a;
  --link-hover: #f5969e;
  --white: #ffffff;
  --muted: #bbbfc6;
  --display-accent: #ef4353;
  --heading-muted: #8f949e;
  --body-muted: #bfc2c9;
  --photo-caption: #d2d3d5;
  --ribbon-muted: #ffd9dd;
  --surface-light: #f2f3f4;
  --ink: #16181d;
  --accent-dark: #8a202e;
  --text-on-light: #535963;
  --border-light: #cdd0d4;
  --text-detail: #565b64;
  --link-on-light: #a3182a;
  --gallery-label: #d7d9de;
  --panel: #202227;
  --area-muted: #b8bdc7;
  --footer-text: #b6bac3;
  --footer-muted: #9297a2;
  --dialog-border: #525761;
  --back-link: #c6cad1;
  --form-muted: #5c626c;
  --field-border: #8e95a0;
  --form-status: #424953;
  --menu-border: #5c616a;
  --contact-muted: #adb3be;
  --faq-border: #3f434b;
  --text-hover: #ef7c89;
  --focus: #e93a48;
  --review-surface: #e9ebee;
  --review-muted: #626976;
  --review-body: #555b65;
  --review-link: #9f1d2e;
  --step-accent: #9e2030;
  --photo-corner: #d4293b;
  --link-border: #aeb1b8;
  --review-header-text: #c0c4cd;
  --neutral-ultra-light: var(--base-light);

  /* ── MOTION ────────────────────────────────────────────────────── */
  --ease:       cubic-bezier(.4, 0, .2, 1);
  --transition: 180ms var(--ease);

  /* ── KIT-DECLARED (not part of the house vocabulary) ───────────── */
  --gutter-page:    5%;
  --gutter-section: 8%;
  --gutter-tablet:  6%;
  --measure:        65ch;

  /* ── HOST VOCABULARY — this build's own names for house tokens ── */
  --font-body:           var(--font-text);
  --container:           var(--content-width);
  --body-line-height:    var(--lh-body);
  --heading-line-height: var(--lh-heading);
  --section-space:       var(--section-space-l);
  --flow-space:          var(--space-m);
  --surface:             var(--page);
  --surface-2:           var(--panel);
  --text-muted:          var(--body-muted);
  --heading-color:       var(--text);
  --on-ink:              var(--text);
  --action-fill-hover:   var(--primary-hover);
  --action-on-fill:      var(--white);
  --action-soft-hover:   var(--surface-light);
  --action-on-soft:      var(--ink);
  --line:                var(--border-light);
}
/* ═══ END GENERATED ═══ */
