/* ============================================================
   Wise Dental Core — design tokens (public API)
   ------------------------------------------------------------
   These variable NAMES are the stable contract consumed by the
   theme, the Pro plugin, every widget and every design preset.
   The VALUES below are the default preset: "Clinical Premium" —
   a warm, neutral, conversion-ready dental baseline. Presets and
   client design.md profiles override values, never names.
   Structure mirrors the Wise Agency design system foundations.
   ============================================================ */

:root {
  /* --- Brand colours ---------------------------------------- */
  --wdc-primary:        #16302B;  /* deep clinical green-charcoal */
  --wdc-primary-soft:   #E8EFEA;
  --wdc-secondary:      #0F1B2D;  /* ink navy for dark sections    */
  --wdc-accent:         #C8A24B;  /* warm brass — premium, not "dental blue" */
  --wdc-accent-soft:    #F4ECD9;

  /* --- Semantic surfaces ------------------------------------ */
  --wdc-bg:             #FAF8F4;  /* warm paper, never stark white */
  --wdc-surface:        #FFFFFF;
  --wdc-surface-raised: #FFFFFF;
  --wdc-bg-inverse:     #101816;
  --wdc-text:           #1C2421;
  --wdc-text-inverse:   #F5F3EE;
  --wdc-muted:          #5C6661;
  --wdc-border:         rgba(28, 36, 33, 0.12);
  --wdc-border-strong:  rgba(28, 36, 33, 0.24);

  /* --- State / domain colours ------------------------------- */
  --wdc-success:        #2E7D5B;
  --wdc-warning:        #B97324;
  --wdc-error:          #B3422F;
  --wdc-emergency:      #B3422F;  /* emergency CTAs/banners        */
  --wdc-finance:        #2F5D7C;  /* finance mentions/badges       */
  --wdc-proof:          #C8A24B;  /* stars, badges, trust accents  */
  --wdc-focus:          #2F5D7C;

  /* --- Typography -------------------------------------------- */
  --wdc-font-display:   "Fraunces", Georgia, serif;
  --wdc-font-body:      "Inter", -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;
  --wdc-font-ui:        var(--wdc-font-body);

  --wdc-fs-hero:        clamp(2.75rem, 6.5vw, 5.5rem);
  --wdc-fs-h1:          clamp(2.375rem, 5vw, 4.25rem);
  --wdc-fs-h2:          clamp(1.875rem, 3.4vw, 3rem);
  --wdc-fs-h3:          clamp(1.5rem, 2.2vw, 1.875rem);
  --wdc-fs-h4:          1.25rem;
  --wdc-fs-h5:          1.125rem;
  --wdc-fs-h6:          1rem;
  --wdc-fs-lead:        1.125rem;
  --wdc-fs-body:        1rem;
  --wdc-fs-small:       0.875rem;
  --wdc-fs-eyebrow:     0.8125rem;
  --wdc-fs-caption:     0.75rem;
  --wdc-fs-stat:        clamp(2.25rem, 4vw, 3.5rem);

  --wdc-lh-display:     1.02;
  --wdc-lh-heading:     1.12;
  --wdc-lh-body:        1.6;
  --wdc-tracking-display: -0.015em;
  --wdc-tracking-eyebrow: 0.14em;
  --wdc-weight-display: 600;
  --wdc-weight-heading: 600;
  --wdc-weight-body:    400;

  /* --- Layout ------------------------------------------------ */
  --wdc-container:          1240px;
  --wdc-container-wide:     1440px;
  --wdc-container-narrow:   860px;
  --wdc-gutter:             clamp(1.25rem, 4vw, 3.5rem);
  --wdc-section-space:      clamp(4rem, 9vw, 8.5rem);
  --wdc-section-space-sm:   clamp(2.5rem, 6vw, 5rem);
  --wdc-grid-gap:           clamp(1rem, 2.2vw, 2rem);
  --wdc-header-height:      84px;
  --wdc-mobile-cta-height:  64px;

  /* --- Radius ------------------------------------------------ */
  --wdc-radius-sm:      6px;
  --wdc-radius-md:      12px;
  --wdc-radius-lg:      20px;
  --wdc-radius-xl:      32px;
  --wdc-radius-pill:    999px;
  --wdc-button-radius:  var(--wdc-radius-pill);
  --wdc-card-radius:    var(--wdc-radius-lg);
  --wdc-input-radius:   var(--wdc-radius-md);
  --wdc-image-radius:   var(--wdc-radius-lg);

  /* --- Elevation --------------------------------------------- */
  --wdc-shadow-soft:    0 2px 8px rgba(16, 24, 22, 0.06);
  --wdc-shadow-card:    0 10px 32px rgba(16, 24, 22, 0.09);
  --wdc-shadow-raised:  0 24px 56px rgba(16, 24, 22, 0.13);

  /* --- Motion ------------------------------------------------ */
  --wdc-ease:           cubic-bezier(0.22, 1, 0.36, 1);
  --wdc-dur-fast:       180ms;
  --wdc-dur-base:       320ms;
  --wdc-dur-slow:       560ms;
  --wdc-transition:     var(--wdc-dur-base) var(--wdc-ease);
  --wdc-motion:         1; /* 0 disables widget entrance animation (Performance Manager) */
  --wdc-reveal-distance: 24px;
  --wdc-stagger:        80ms;

  /* --- Overlays / misc --------------------------------------- */
  --wdc-overlay:        rgba(16, 24, 22, 0.45);
  --wdc-overlay-strong: rgba(16, 24, 22, 0.68);
  --wdc-z-header:       100;
  --wdc-z-sticky-cta:   110;
  --wdc-z-modal:        200;
}

/* System-level reduced motion always wins over everything. */
@media (prefers-reduced-motion: reduce) {
  :root {
    --wdc-motion: 0;
    --wdc-dur-fast: 1ms;
    --wdc-dur-base: 1ms;
    --wdc-dur-slow: 1ms;
  }
}
