/* Smiles — A brighter working day. Recommended marketing system, v1.0. */
:root {
  color-scheme: light;
  --sm-plum-950: #2A1730;
  --sm-plum-800: #4D1863;
  --sm-plum-900: #391047;
  --sm-purple-700: #702987;
  --sm-ivory-50: #FBF8F2;
  --sm-white: #FFFFFF;
  --sm-lilac-100: #F0EAF4;
  --sm-lilac-200: #E7DDEC;
  --sm-sunshine-300: #F6D45B;
  --sm-sunshine-200: #FFE282;
  --sm-sunshine-400: #E5BF3D;
  --sm-mint-100: #D6F0E4;
  --sm-mint-800: #225340;
  --sm-neutral-600: #6B5B70;
  --sm-neutral-400: #8D7C95;
  --sm-neutral-200: #DED5E2;
  --sm-error-700: #A52B41;
  --sm-error-50: #FFF0F2;
  --sm-warning-800: #775010;
  --sm-warning-50: #FFF2CC;
  --sm-info-700: #255B86;
  --sm-info-50: #EAF3FC;
  --sm-color-background: var(--sm-ivory-50);
  --sm-color-surface: var(--sm-white);
  --sm-color-surface-soft: var(--sm-lilac-100);
  --sm-color-text: var(--sm-plum-950);
  --sm-color-text-muted: var(--sm-neutral-600);
  --sm-color-action: var(--sm-plum-800);
  --sm-color-action-hover: var(--sm-plum-900);
  --sm-color-action-pressed: var(--sm-plum-950);
  --sm-color-on-action: var(--sm-white);
  --sm-color-accent: var(--sm-sunshine-300);
  --sm-color-on-accent: var(--sm-plum-950);
  --sm-color-border: var(--sm-neutral-200);
  --sm-color-control-border: var(--sm-neutral-400);
  --sm-color-focus: var(--sm-purple-700);
  --sm-color-success: var(--sm-mint-800);
  --sm-color-success-surface: var(--sm-mint-100);
  --sm-color-warning: var(--sm-warning-800);
  --sm-color-warning-surface: var(--sm-warning-50);
  --sm-color-error: var(--sm-error-700);
  --sm-color-error-surface: var(--sm-error-50);
  --sm-color-info: var(--sm-info-700);
  --sm-color-info-surface: var(--sm-info-50);
  --sm-color-disabled-surface: var(--sm-lilac-200);
  --sm-color-disabled-text: var(--sm-neutral-600);
  --sm-font-display: 'Plus Jakarta Sans', 'Segoe UI', Arial, sans-serif;
  --sm-font-body: 'DM Sans', 'Segoe UI', Arial, sans-serif;
  --sm-type-display: clamp(2.5rem, 5.3vw, 4rem);
  --sm-type-h1: clamp(2.25rem, 4.5vw, 3.5rem);
  --sm-type-h2: clamp(2rem, 3.5vw, 2.75rem);
  --sm-type-h3: clamp(1.5rem, 2.5vw, 1.75rem);
  --sm-type-lead: clamp(1.125rem, 1.6vw, 1.25rem);
  --sm-type-body: 1rem;
  --sm-type-small: 0.875rem;
  --sm-type-label: 0.75rem;
  --sm-leading-heading: 1.08;
  --sm-leading-h2: 1.12;
  --sm-leading-h3: 1.2;
  --sm-leading-body: 1.6;
  --sm-tracking-display: -0.045em;
  --sm-tracking-heading: -0.035em;
  --sm-space-1: 0.25rem;
  --sm-space-2: 0.5rem;
  --sm-space-3: 0.75rem;
  --sm-space-4: 1rem;
  --sm-space-6: 1.5rem;
  --sm-space-8: 2rem;
  --sm-space-12: 3rem;
  --sm-space-16: 4rem;
  --sm-space-24: 6rem;
  --sm-space-32: 8rem;
  --sm-radius-sm: 0.5rem;
  --sm-radius-control: 0.75rem;
  --sm-radius-card: 1.25rem;
  --sm-radius-feature: 1.75rem;
  --sm-radius-pill: 999px;
  --sm-shadow-card: 0 8px 24px rgb(42 23 48 / 6%);
  --sm-shadow-feature: 0 20px 64px rgb(42 23 48 / 12%);
  --sm-control-height: 3rem;
  --sm-container-max: 75rem;
  --sm-gutter: 1.5rem;
  --sm-section-space: 6rem;
  --sm-motion-fast: 160ms;
  --sm-motion-normal: 240ms;
  --sm-ease-out: cubic-bezier(0.2, 0.8, 0.2, 1);
}
@media (min-width: 60rem) {
  :root { --sm-gutter: 2.5rem; }
}
@media (max-width: 39.99rem) {
  :root { --sm-section-space: 3rem; }
}
@media (prefers-reduced-motion: reduce) {
  :root { --sm-motion-fast: 0ms; --sm-motion-normal: 0ms; }
}
