/* imobrt — Design System & Tokens Oficiais
   Marca institucional: Regional Triângulo Imóveis */

@font-face {
  font-family: "New Order";
  src: url("../assets/fonts/new-order-regular.otf") format("opentype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "New Order";
  src: url("../assets/fonts/new-order-medium.otf") format("opentype");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: "New Order";
  src: url("../assets/fonts/new-order-semibold.otf") format("opentype");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "New Order";
  src: url("../assets/fonts/new-order-bold.otf") format("opentype");
  font-style: normal;
  font-weight: 700 800;
  font-display: swap;
}

:root {
  /* Primitivas da identidade Regional Triângulo */
  --color-regional-blue-500: #4285c5;
  --color-regional-blue-600: #3476b3;
  --color-regional-blue-700: #2f5f8d;
  --color-regional-blue-50: #f5faff;
  --color-regional-blue-100: #eaf4fd;
  --color-regional-ink: #50535e;
  --color-regional-ink-soft: #6d7380;
  --color-regional-line: #dce7f2;

  /* Papéis semânticos */
  --primary: var(--color-regional-blue-500);
  --primary-bright: var(--color-regional-blue-600);
  --primary-dim: var(--color-regional-blue-700);
  --primary-light: var(--color-regional-blue-100);
  
  --oportunidade: #26a25c;    /* Verde Exclusivo para Particulares / Oportunidades */
  --oportunidade-light: #edf8f2;
  
  --success: #16a34a;
  --warning: #d97706;
  --danger: #ef4444;
  
  /* Superfícies & Neutros */
  --bg-app: #f7f9fc;
  --surface: #ffffff;
  --surface-elevated: #ffffff;
  --surface-translucent: rgba(255, 255, 255, 0.88);
  
  --text-main: var(--color-regional-ink);
  --text-muted: var(--color-regional-ink-soft);
  --text-light: #9aa4af;
  
  --border: var(--color-regional-line);
  --border-light: #eef4f9;
  --border-focus: var(--primary-dim);
  
  /* Sombras em Camadas */
  --shadow-sm: 0 1px 2px 0 rgba(80, 83, 94, 0.07);
  --shadow-card: 0 4px 12px -2px rgba(80, 83, 94, 0.1), 0 2px 6px -1px rgba(80, 83, 94, 0.05);
  --shadow-elevated: 0 12px 28px -4px rgba(80, 83, 94, 0.16), 0 4px 10px -2px rgba(80, 83, 94, 0.07);
  --shadow-popup: 0 20px 35px -5px rgba(80, 83, 94, 0.24);
  
  /* Raios de Borda */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-xl: 18px;
  --radius-full: 9999px;
  
  /* Tipografia */
  --font-sans: "New Order", "Outfit", system-ui, -apple-system, sans-serif;
  --font-heading: "New Order", "Outfit", system-ui, -apple-system, sans-serif;
  --font-mono: "JetBrains Mono", monospace;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-sans);
  background-color: var(--bg-app);
  color: var(--text-main);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  overflow: hidden;
  height: 100vh;
  width: 100vw;
}

/* Texturas de Marca */
.bg-triangle {
  position: fixed;
  inset: 0;
  background-image: radial-gradient(rgba(66, 133, 197, 0.045) 1.5px, transparent 1.5px);
  background-size: 24px 24px;
  pointer-events: none;
  z-index: 0;
}

.bg-radial {
  position: fixed;
  inset: 0;
  background: radial-gradient(circle at 50% 0%, rgba(66, 133, 197, 0.09), transparent 70%);
  pointer-events: none;
  z-index: 0;
}
