/* ============================================================
   AVEMA SOLUÇÕES — IDENTIDADE VISUAL
   Paleta: fundo grafite quase-preto, vermelho intenso (segurança)
   e dourado latão (comércio/qualidade). Tipografia condensada
   (Oswald) para títulos + Inter para texto corrido.
   ============================================================ */

:root {
  --bg: #0b0d10;
  --surface: #15181d;
  --surface-2: #1c2027;
  --border: #262b33;
  --text: #f3f1ee;
  --muted: #a3a7ae;
  --primary: #c21f2f;      /* vermelho segurança */
  --primary-dark: #8f1622;
  --gold: #c9a24b;         /* dourado latão */
  --gold-dark: #a4802f;
  --whatsapp: #25d366;
}

* { scrollbar-color: var(--primary) var(--surface); }

html { scroll-behavior: smooth; }

body {
  background: var(--bg);
  color: var(--text);
  font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
}

.font-display {
  font-family: "Oswald", ui-sans-serif, system-ui, sans-serif;
  letter-spacing: 0.02em;
}

/* --- faixa diagonal "hazard stripe", o elemento assinatura da marca --- */
.hazard-stripe {
  height: 6px;
  background-image: repeating-linear-gradient(
    -45deg,
    var(--gold) 0px,
    var(--gold) 14px,
    #0b0d10 14px,
    #0b0d10 28px
  );
}

.bg-surface { background-color: var(--surface); }
.bg-surface-2 { background-color: var(--surface-2); }
.border-brand { border-color: var(--border); }
.text-muted { color: var(--muted); }
.text-primary { color: var(--primary); }
.text-gold { color: var(--gold); }
.bg-primary { background-color: var(--primary); }
.bg-gold { background-color: var(--gold); }

.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  border-radius: 0.75rem;
  padding: 0.9rem 1.6rem;
  font-weight: 700;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 0.875rem;
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}
.btn:hover { transform: translateY(-2px); }

.btn-primary { background: linear-gradient(135deg, var(--primary), var(--primary-dark)); color: #fff; box-shadow: 0 10px 30px -10px rgba(194, 31, 47, 0.6); }
.btn-gold { background: linear-gradient(135deg, var(--gold), var(--gold-dark)); color: #1a1206; box-shadow: 0 10px 30px -10px rgba(201, 162, 75, 0.55); }
.btn-whatsapp { background: var(--whatsapp); color: #06210f; box-shadow: 0 10px 30px -10px rgba(37, 211, 102, 0.55); }
.btn-outline { border: 2px solid var(--gold); color: var(--gold); }
.btn-outline:hover { background: var(--gold); color: #1a1206; }

.card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 1rem;
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.card:hover { transform: translateY(-4px); border-color: rgba(201, 162, 75, 0.5); box-shadow: 0 20px 40px -20px rgba(0,0,0,0.6); }

/* Card de serviço com imagem de fundo real + véu escuro para leitura do texto */
.service-photo-card {
  position: relative;
  overflow: hidden;
  border-radius: 1rem;
  border: 1px solid var(--border);
  isolation: isolate;
}
.service-photo-card::before {
  content: "";
  position: absolute; inset: 0;
  background-size: cover;
  background-position: center;
  transform: scale(1.02);
  transition: transform 0.4s ease;
  z-index: -2;
}
.service-photo-card::after {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(11,13,16,0.55) 0%, rgba(11,13,16,0.88) 65%, rgba(11,13,16,0.97) 100%);
  z-index: -1;
}
.service-photo-card:hover::before { transform: scale(1.08); }

.section-photo-bg {
  position: relative;
  background-size: cover;
  background-position: center;
  background-attachment: scroll;
}
.section-photo-bg::before {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(11,13,16,0.92) 0%, rgba(11,13,16,0.80) 100%);
}
.section-photo-bg > * { position: relative; z-index: 1; }

.chip {
  display: inline-flex; align-items: center; gap: 0.4rem;
  border: 1px solid rgba(201, 162, 75, 0.4);
  color: var(--gold);
  border-radius: 999px;
  padding: 0.4rem 1rem;
  font-size: 0.75rem;
  font-weight: 600;
  background: rgba(201, 162, 75, 0.08);
}

.input-field {
  width: 100%;
  background: var(--surface-2);
  border: 1px solid var(--border);
  border-radius: 0.65rem;
  padding: 0.75rem 1rem;
  color: var(--text);
  font-size: 0.9rem;
}
.input-field:focus { outline: 2px solid var(--gold); outline-offset: 1px; }

.reveal { opacity: 0; transform: translateY(18px); transition: opacity 0.6s ease, transform 0.6s ease; }
.reveal.in-view { opacity: 1; transform: translateY(0); }

.modal-backdrop {
  position: fixed; inset: 0; background: rgba(5,6,8,0.8);
  backdrop-filter: blur(4px);
  align-items: center; justify-content: center;
  z-index: 100; padding: 1rem;
}
/* display is controlled via inline style from JS (not the "hidden" utility class)
   to avoid CSS specificity conflicts with the Tailwind CDN stylesheet load order */

#site-header.scrolled { background: rgba(11,13,16,0.96); box-shadow: 0 10px 30px -15px rgba(0,0,0,0.6); }

::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: var(--surface); }
::-webkit-scrollbar-thumb { background: var(--primary); border-radius: 999px; }
