:root {
  /* =========================
     BRAND THEME
  ========================= */
  --sv-color-bg: #080808;
  --sv-color-bg-elevated: #0d0d0d;
  --sv-color-bg-soft: #101010;

  --sv-color-surface: rgba(255, 255, 255, 0.055);
  --sv-color-surface-strong: rgba(255, 255, 255, 0.075);
  --sv-color-surface-soft: rgba(255, 255, 255, 0.035);

  --sv-color-text: #f5f2ee;
  --sv-color-muted: rgba(245, 242, 238, 0.68);
  --sv-color-soft: rgba(245, 242, 238, 0.46);
  --sv-color-inverse: #ffffff;

  --sv-color-line: rgba(255, 255, 255, 0.12);
  --sv-color-line-soft: rgba(255, 255, 255, 0.08);

  --sv-color-accent: #d96d22;
  --sv-color-accent-strong: #f07b28;
  --sv-color-accent-dark: #a84813;
  --sv-color-accent-deep: #b94b12;
  --sv-color-star: #ffc247;

  /* =========================
     FONT
  ========================= */
  --sv-font-main:
    -apple-system,
    BlinkMacSystemFont,
    "SF Pro Display",
    "SF Pro Text",
    "Helvetica Neue",
    Arial,
    sans-serif;

  --sv-font-weight-regular: 400;
  --sv-font-weight-medium: 500;
  --sv-font-weight-semibold: 600;
  --sv-font-weight-bold: 650;

  /* =========================
     FLUID TYPE SCALE
  ========================= */
  --sv-text-xs: clamp(0.6875rem, 0.66rem + 0.12vw, 0.75rem);
  --sv-text-sm: clamp(0.75rem, 0.72rem + 0.16vw, 0.8125rem);
  --sv-text-md: clamp(0.875rem, 0.83rem + 0.22vw, 0.9375rem);
  --sv-text-base: clamp(0.9375rem, 0.88rem + 0.28vw, 1rem);
  --sv-text-lg: clamp(1.0625rem, 0.96rem + 0.48vw, 1.4375rem);
  --sv-text-xl: clamp(1.5rem, 1.1rem + 1.8vw, 2.25rem);
  --sv-text-2xl: clamp(1.875rem, 1.35rem + 2.6vw, 3.125rem);
  --sv-text-hero: clamp(3rem, 1.85rem + 5.6vw, 5.5rem);
  --sv-text-final: clamp(2.25rem, 1.55rem + 3.6vw, 3.875rem);

  /* =========================
     LINE HEIGHT / TRACKING
  ========================= */
  --sv-leading-tight: 0.96;
  --sv-leading-title: 1.05;
  --sv-leading-body: 1.45;
  --sv-leading-relaxed: 1.6;

  --sv-tracking-tight: -0.055em;
  --sv-tracking-title: -0.04em;
  --sv-tracking-body: -0.015em;
  --sv-tracking-kicker: 0.08em;
  --sv-tracking-logo: 0.08em;

  /* =========================
     FLUID SPACING
  ========================= */
  --sv-space-1: clamp(0.25rem, 0.22rem + 0.15vw, 0.375rem);
  --sv-space-2: clamp(0.5rem, 0.44rem + 0.3vw, 0.75rem);
  --sv-space-3: clamp(0.75rem, 0.66rem + 0.45vw, 1rem);
  --sv-space-4: clamp(1rem, 0.86rem + 0.7vw, 1.375rem);
  --sv-space-5: clamp(1.25rem, 1rem + 1.2vw, 2rem);
  --sv-space-6: clamp(1.5rem, 1.15rem + 1.8vw, 2.75rem);
  --sv-space-7: clamp(2rem, 1.35rem + 3vw, 4.5rem);
  --sv-space-8: clamp(2.625rem, 1.65rem + 4.6vw, 5.375rem);
  --sv-space-hero-y: clamp(3.5rem, 2.25rem + 6vw, 6rem);

  /* =========================
     LAYOUT
  ========================= */
  --sv-container: 73.75rem;
  --sv-page-gutter: clamp(1.125rem, 4vw, 2.75rem);

  --sv-header-height: 3.5rem;
  --sv-topbar-height: 1.625rem;
  --sv-sticky-height: 5.125rem;

  --sv-hero-min-height: clamp(35rem, 78vh, 47.5rem);
  --sv-feature-min-height: clamp(18.75rem, 38vw, 26.875rem);

  /* =========================
     RADIUS
  ========================= */
  --sv-radius-xs: 0.4375rem;
  --sv-radius-sm: 0.5rem;
  --sv-radius-md: 0.625rem;
  --sv-radius-lg: 0.875rem;
  --sv-radius-xl: 1.25rem;
  --sv-radius-pill: 999rem;

  /* =========================
     BORDER
  ========================= */
  --sv-border-width: 1px;
  --sv-border: var(--sv-border-width) solid var(--sv-color-line);
  --sv-border-soft: var(--sv-border-width) solid var(--sv-color-line-soft);

  /* =========================
     SHADOW / EFFECT
  ========================= */
  --sv-shadow-product: 0 2rem 4.375rem rgba(0, 0, 0, 0.52);
  --sv-shadow-soft: 0 1.125rem 3rem rgba(0, 0, 0, 0.28);
  --sv-blur-header: blur(1.125rem);

  /* =========================
     GRADIENT
  ========================= */
  --sv-gradient-page:
    radial-gradient(circle at 78% 8%, rgba(217, 109, 34, 0.32), transparent 34rem),
    linear-gradient(180deg, #090909 0%, #0d0d0d 42%, #080808 100%);

  --sv-gradient-accent:
    linear-gradient(180deg, var(--sv-color-accent-strong), var(--sv-color-accent-deep));

  --sv-gradient-topbar:
    linear-gradient(90deg, var(--sv-color-accent-dark), var(--sv-color-accent));

  --sv-gradient-card:
    linear-gradient(180deg, var(--sv-color-surface-strong), var(--sv-color-surface-soft));

  --sv-gradient-hero:
    linear-gradient(90deg, rgba(8, 8, 8, 0.95) 0%, rgba(8, 8, 8, 0.84) 43%, rgba(8, 8, 8, 0.16) 100%),
    radial-gradient(circle at 75% 60%, rgba(217, 109, 34, 0.34), transparent 26rem);

  --sv-gradient-feature:
    linear-gradient(90deg, rgba(255, 255, 255, 0.025), transparent);

  --sv-gradient-final:
    radial-gradient(circle at 72% 50%, rgba(217, 109, 34, 0.22), transparent 25rem),
    linear-gradient(180deg, rgba(255, 255, 255, 0.025), transparent);

  --sv-gradient-caption:
    linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.76));

  /* =========================
     COMPONENT SIZE
  ========================= */
  --sv-button-height: 2.875rem;
  --sv-button-padding-x: clamp(1.375rem, 2.4vw, 2.125rem);

  --sv-header-button-height: 2.375rem;
  --sv-header-button-padding-x: clamp(1rem, 2vw, 1.375rem);

  --sv-card-padding: clamp(1.25rem, 3vw, 1.75rem);
  --sv-card-min-height: 10.75rem;

  --sv-icon-size: 3rem;
  --sv-icon-height: 2.375rem;

  --sv-marquee-speed: 32s;
  --sv-marquee-gap: clamp(3.25rem, 8vw, 6rem);
}