﻿/**
 * Site Theme - Design Tokens
 * Base visual compartilhada para o runtime multisite.
 */

:root {
  /* Colors: Primary (Institutional Blue) */
  --color-primary-500: #0C2842;
  --color-primary-600: #081D31;
  --color-primary-700: #061423;

  /* Colors: Accent (Links, micro highlights) */
  --color-accent-500: #0E7C86;

  /* Colors: Neutral */
  --color-neutral-0: #FFFFFF;
  --color-neutral-50: #F2F6FA;
  --color-neutral-100: #DFE8F0;
  --color-neutral-200: #C7D2DE;
  --color-neutral-300: #B4C0CC;
  --color-neutral-400: #9CA3AF;
  --color-neutral-500: #6B7280;
  --color-neutral-600: #4B5563;
  --color-neutral-700: #374151;
  --color-neutral-800: #1F2937;
  --color-neutral-900: #111827;
  --color-on-dark-strong: #FFFFFF;
  --color-on-dark: rgba(255, 255, 255, 0.88);
  --color-on-dark-muted: rgba(255, 255, 255, 0.72);

  /* Colors: Feedback */
  --color-success: #1F7A3E;
  --color-warning: #C47F00;
  --color-danger: #B42318;

  /* Theme accents */
  --color-theme-primary: #0C2842;
  --color-theme-primary-light: #4BA7F4;
  --color-theme-primary-dark: #061423;

  /* Global branding (default = primary) */
  --color-brand: var(--color-primary-500);

  /* Typography */
  --font-family-heading: 'Sora', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --font-family-sans: 'Manrope', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 2rem;
  --font-size-4xl: 2.5rem;
  --font-size-5xl: 3rem;
  --font-size-6xl: 4.5rem;

  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;

  --line-height-tight: 1.1;
  --line-height-normal: 1.6;
  --line-height-relaxed: 1.7;

  /* Spacing (8pt system) */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 40px;
  --space-8: 48px;
  --space-9: 64px;
  --space-10: 80px;
  --space-11: 96px;

  /* Radius */
  --radius-none: 0px;
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 8px;

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 8px rgba(0, 0, 0, 0.08);
  --shadow-lg: 0 10px 20px rgba(0, 0, 0, 0.08);

  /* Layout */
  --grid-max-width: 1200px;
  --grid-columns: 12;
  --grid-gutter: 24px;
  --container-padding: 24px;
  --header-height: 80px;

  /* Motion */
  --duration-fast: 180ms;
  --duration-normal: 320ms;
  --duration-slow: 560ms;
  --easing: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-standard: var(--easing);

  /* Breakpoints (reference only) */
  /* sm: 640px | md: 768px | lg: 1024px | xl: 1280px | 2xl: 1536px */
}

/* Public default theme */
body[data-theme="site-theme"],
body[data-company="site-1"] {
  /* Colors */
  --color-brand: var(--color-theme-primary);
  --color-brand-light: var(--color-theme-primary-light);
  --color-brand-dark: var(--color-theme-primary-dark);
  --color-brand-rgb: 12, 40, 66;
  --color-brand-surface: #EEF4F9;
  --color-brand-surface-hover: #E1EBF4;

  /* Buttons */
  --ds-btn-bg: #0E7C86;
  --ds-btn-bg-hover: #0B5F69;
  --ds-btn-color: #FFFFFF;
  --ds-btn-secondary-bg: #FFFFFF;
  --ds-btn-secondary-color: #0C2842;
  --ds-btn-secondary-border: rgba(12, 40, 66, 0.18);
  --ds-btn-secondary-hover-bg: #E7F4F5;
  --ds-btn-transform: none;
  --ds-btn-letter-spacing: 0.02em;
  --ds-btn-font-weight: 700;
  --ds-btn-padding: 15px 28px;
  --ds-btn-padding-lg: 18px 34px;

  /* Radius */
  --ds-radius-btn: 999px;
  --ds-radius-card: 28px;
  --ds-radius-input: 18px;
  --ds-radius-tag: 999px;

  /* Shadows */
  --ds-shadow-card: 0 18px 40px rgba(6, 20, 35, 0.08);
  --ds-shadow-card-hover: 0 28px 64px rgba(6, 20, 35, 0.14);

  /* Cards */
  --ds-card-border: none;
  --ds-card-border-left: none;
  --ds-card-bg: var(--color-neutral-0);

  /* Stats */
  --ds-stat-number-weight: 800;
  --ds-stat-suffix-scale: 0.6;

  /* Hero */
  --ds-hero-title-weight: 800;
  --ds-hero-title-spacing: -0.04em;
  --ds-hero-overlay: linear-gradient(180deg, rgba(6, 20, 35, 0.18) 0%, rgba(6, 20, 35, 0.76) 55%, rgba(6, 20, 35, 0.94) 100%);

  /* Section divider */
  --ds-divider-width: 48px;
  --ds-divider-height: 3px;

  /* CTA banner */
  --ds-cta-bg: #081D31;

  /* Process */
  --ds-process-number-radius: 50%;
  --ds-process-number-size: 56px;
  --ds-process-number-bg: linear-gradient(135deg, #3EC7B7 0%, #4BA7F4 100%);
  --ds-process-line-color: var(--color-neutral-200);

  /* Images */
  --ds-img-filter: saturate(0.85) contrast(1.05);
  --ds-img-overlay: rgba(12, 40, 66, 0.12);
}

body[data-theme="joitec"],
body[data-company="site-2"] {
  --color-bg: #f3f5fb;
  --color-bg-elevated: #f8faff;
  --color-surface: #ffffff;
  --color-surface-2: #eef2fb;
  --color-surface-3: #e4eaf8;
  --color-text: #11184f;
  --color-text-soft: #4f5b86;
  --color-text-muted: #7a85ab;
  --color-text-inverse: #ffffff;
  --color-primary: #2737c8;
  --color-primary-hover: #3244df;
  --color-primary-active: #1d2fa7;
  --color-primary-soft: rgba(39, 55, 200, 0.12);
  --color-border: #d6ddee;
  --color-border-soft: #e7ebf4;
  --color-border-strong: #adb9e1;
  --color-success: #2f7a58;
  --color-warning: #bf8430;
  --color-danger: #c35f4c;
  --color-info: #4e7598;
  --color-glow: rgba(39, 55, 200, 0.18);
  --color-overlay: rgba(11, 16, 74, 0.58);
  --color-brand: var(--color-primary);
  --color-brand-light: var(--color-primary-hover);
  --color-brand-dark: var(--color-primary-active);
  --color-brand-rgb: 39, 55, 200;
  --color-brand-surface: rgba(39, 55, 200, 0.08);
  --color-brand-surface-hover: rgba(39, 55, 200, 0.14);
  --color-accent-500: var(--color-primary);
  --color-theme-primary: var(--color-primary);
  --color-theme-primary-light: var(--color-primary-hover);
  --color-theme-primary-dark: #0b104a;
  --font-family-heading: 'Archivo', 'Segoe UI', Arial, sans-serif;
  --font-family-sans: 'Public Sans', 'Segoe UI', Arial, sans-serif;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 2rem;
  --font-size-4xl: 2.5rem;
  --font-size-5xl: 3.5rem;
  --ds-btn-bg: var(--color-primary);
  --ds-btn-bg-hover: var(--color-primary-hover);
  --ds-btn-color: var(--color-text-inverse);
  --ds-btn-secondary-bg: rgba(255, 253, 250, 0.82);
  --ds-btn-secondary-color: var(--color-text);
  --ds-btn-secondary-border: var(--color-border-strong);
  --ds-btn-secondary-hover-bg: rgba(255, 255, 255, 0.92);
  --ds-btn-transform: none;
  --ds-btn-letter-spacing: 0.01em;
  --ds-btn-font-weight: 700;
  --ds-btn-padding: 0 20px;
  --ds-btn-padding-lg: 0 24px;
  --ds-radius-btn: 10px;
  --ds-radius-card: 14px;
  --ds-radius-input: 10px;
  --ds-radius-tag: 999px;
  --ds-shadow-card: 0 16px 40px rgba(49, 33, 19, 0.08);
  --ds-shadow-card-hover: 0 22px 56px rgba(17, 24, 79, 0.12);
  --ds-card-border: 1px solid var(--color-border);
  --ds-card-border-left: none;
  --ds-card-bg: var(--color-surface);
  --ds-stat-number-weight: 800;
  --ds-stat-suffix-scale: 0.7;
  --ds-hero-title-weight: 800;
  --ds-hero-title-spacing: -0.04em;
  --ds-hero-overlay: linear-gradient(180deg, rgba(11, 16, 74, 0.08) 0%, rgba(11, 16, 74, 0.24) 40%, rgba(11, 16, 74, 0.52) 100%);
  --ds-divider-width: 64px;
  --ds-divider-height: 4px;
  --ds-cta-bg: linear-gradient(135deg, #0b104a 0%, #2737c8 100%);
  --ds-process-number-radius: 18px;
  --ds-process-number-size: 54px;
  --ds-process-number-bg: linear-gradient(135deg, #2737c8 0%, #0f1a72 100%);
  --ds-process-line-color: var(--color-border);
  --ds-img-filter: saturate(0.96) contrast(1.02) brightness(0.98);
  --ds-img-overlay: rgba(11, 16, 74, 0.16);
  --header-height: 84px;
  --grid-max-width: 1320px;
  --grid-gutter: 24px;
  --container-padding: 24px;
  --duration-fast: 160ms;
  --duration-normal: 220ms;
  --duration-slow: 320ms;
  --easing: cubic-bezier(0.2, 0.8, 0.2, 1);
}


