/**
 * NexaTech — Brand Tokens
 * CSS Custom Properties (variables) para WordPress e site
 */

:root {

  /* CORES — Paleta NexaTech */
  --nt-indigo:        #1E3A8A;
  --nt-indigo-light:  #2D4FA8;
  --nt-indigo-dark:   #162D6E;
  --nt-off-white:     #F8F9FA;
  --nt-white:         #FFFFFF;
  --nt-border:        #E5E7EB;
  --nt-border-dark:   #D1D5DB;
  --nt-amber:         #F59E0B;
  --nt-amber-dark:    #D97706;
  --nt-text:          #111827;
  --nt-text-secondary:#6B7280;
  --nt-text-muted:    #9CA3AF;
  --nt-success:       #166534;
  --nt-success-bg:    #DCFCE7;
  --nt-error:         #991B1B;
  --nt-error-bg:      #FEF2F2;

  /* TIPOGRAFIA */
  --nt-font-title:    'Plus Jakarta Sans', 'Arial Black', sans-serif;
  --nt-font-body:     'Inter', 'Arial', sans-serif;
  --nt-font-badge:    'Space Grotesk', 'Arial', sans-serif;
  --nt-weight-regular:   400;
  --nt-weight-medium:    500;
  --nt-weight-semibold:  600;
  --nt-weight-bold:      700;
  --nt-weight-extrabold: 800;
  --nt-text-xs:      0.75rem;
  --nt-text-sm:      0.875rem;
  --nt-text-base:    1.125rem;
  --nt-text-lg:      1.25rem;
  --nt-text-xl:      1.5rem;
  --nt-text-2xl:     1.875rem;
  --nt-text-3xl:     2.25rem;
  --nt-text-4xl:     3rem;
  --nt-leading-tight:  1.2;
  --nt-leading-snug:   1.35;
  --nt-leading-normal: 1.6;
  --nt-leading-loose:  1.8;
  --nt-tracking-tight:  -0.02em;
  --nt-tracking-normal:  0;
  --nt-tracking-wide:    0.06em;
  --nt-tracking-widest:  0.12em;

  /* ESPAÇAMENTO */
  --nt-space-1:   0.25rem;
  --nt-space-2:   0.5rem;
  --nt-space-3:   0.75rem;
  --nt-space-4:   1rem;
  --nt-space-5:   1.25rem;
  --nt-space-6:   1.5rem;
  --nt-space-8:   2rem;
  --nt-space-10:  2.5rem;
  --nt-space-12:  3rem;
  --nt-space-16:  4rem;
  --nt-space-20:  5rem;

  /* BORDAS E SOMBRAS */
  --nt-radius-sm:   4px;
  --nt-radius:      8px;
  --nt-radius-md:   12px;
  --nt-radius-lg:   16px;
  --nt-radius-full: 9999px;
  --nt-shadow-sm:   0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.06);
  --nt-shadow:      0 4px 12px rgba(0,0,0,0.10), 0 2px 6px rgba(0,0,0,0.06);
  --nt-shadow-lg:   0 10px 30px rgba(0,0,0,0.12), 0 4px 12px rgba(0,0,0,0.06);

  /* LAYOUT */
  --nt-container-sm:  640px;
  --nt-container:     800px;
  --nt-container-lg: 1100px;

  /* TRANSIÇÕES */
  --nt-transition: 150ms ease-in-out;
}

body {
  font-family: var(--nt-font-body);
  font-size: var(--nt-text-base);
  font-weight: var(--nt-weight-regular);
  line-height: var(--nt-leading-normal);
  color: var(--nt-text);
  background-color: var(--nt-off-white);
}

h1, .nt-h1 {
  font-family: var(--nt-font-title);
  font-size: var(--nt-text-3xl);
  font-weight: var(--nt-weight-extrabold);
  line-height: var(--nt-leading-tight);
  letter-spacing: var(--nt-tracking-tight);
  color: var(--nt-text);
}

h2, .nt-h2 {
  font-family: var(--nt-font-title);
  font-size: var(--nt-text-2xl);
  font-weight: var(--nt-weight-bold);
  line-height: var(--nt-leading-snug);
  letter-spacing: var(--nt-tracking-tight);
  color: var(--nt-text);
}

h3, .nt-h3 {
  font-family: var(--nt-font-title);
  font-size: var(--nt-text-xl);
  font-weight: var(--nt-weight-semibold);
  line-height: var(--nt-leading-snug);
  color: var(--nt-text);
}

p, .nt-body {
  font-family: var(--nt-font-body);
  font-size: var(--nt-text-base);
  font-weight: var(--nt-weight-regular);
  line-height: var(--nt-leading-normal);
  color: var(--nt-text);
}

.nt-caption, .nt-meta {
  font-family: var(--nt-font-body);
  font-size: var(--nt-text-sm);
  color: var(--nt-text-secondary);
}

.nt-badge {
  font-family: var(--nt-font-badge);
  font-size: var(--nt-text-xs);
  font-weight: var(--nt-weight-bold);
  letter-spacing: var(--nt-tracking-widest);
  text-transform: uppercase;
  padding: var(--nt-space-1) var(--nt-space-3);
  border-radius: var(--nt-radius-full);
}

.nt-badge--approved { background-color: var(--nt-indigo); color: var(--nt-white); }
.nt-badge--score    { background-color: var(--nt-amber);  color: var(--nt-text); }
.nt-badge--verified { background-color: transparent; color: var(--nt-indigo); border: 1.5px solid var(--nt-indigo); }

.nt-btn {
  display: inline-flex;
  align-items: center;
  gap: var(--nt-space-2);
  font-family: var(--nt-font-badge);
  font-size: var(--nt-text-sm);
  font-weight: var(--nt-weight-bold);
  letter-spacing: var(--nt-tracking-wide);
  text-transform: uppercase;
  padding: var(--nt-space-3) var(--nt-space-6);
  border-radius: var(--nt-radius);
  border: none;
  cursor: pointer;
  transition: background-color var(--nt-transition), transform var(--nt-transition);
  text-decoration: none;
}

.nt-btn--primary         { background-color: var(--nt-amber);      color: var(--nt-text); }
.nt-btn--primary:hover   { background-color: var(--nt-amber-dark);  transform: translateY(-1px); }
.nt-btn--secondary       { background-color: var(--nt-indigo);      color: var(--nt-white); }
.nt-btn--secondary:hover { background-color: var(--nt-indigo-dark); transform: translateY(-1px); }

.nt-card {
  background-color: var(--nt-white);
  border-radius: var(--nt-radius-md);
  box-shadow: var(--nt-shadow);
  padding: var(--nt-space-6);
  transition: box-shadow var(--nt-transition), transform var(--nt-transition);
}
.nt-card:hover { box-shadow: var(--nt-shadow-lg); transform: translateY(-2px); }

.nt-score { font-family: var(--nt-font-title); font-size: var(--nt-text-4xl); font-weight: var(--nt-weight-extrabold); color: var(--nt-amber); line-height: 1; }
.nt-score-label { font-family: var(--nt-font-body); font-size: var(--nt-text-sm); color: var(--nt-text-secondary); text-transform: uppercase; letter-spacing: var(--nt-tracking-wide); }
.nt-divider { border: none; border-top: 1px solid var(--nt-border); margin: var(--nt-space-8) 0; }
