/* ==========================================================================
   A&A SEG - Utilitários estáticos (substitui o Tailwind Play CDN)
   Gerado manualmente para produção: cobre apenas as classes utilizadas em
   index.html, evitando o aviso "cdn.tailwindcss.com should not be used in
   production" e a compilação de CSS em tempo real no navegador.
   Convenção: seletores por atributo [class~="..."] preservam exatamente os
   nomes de classe usados no HTML (incluindo ':', '/', '[]'), sem precisar
   reescrever o markup nem escapar caracteres especiais em seletores de classe.
   ========================================================================== */

/* ---------- Reset mínimo ---------- */
*, *::before, *::after { box-sizing: border-box; }
[class~="hidden"] { display: none; }

/* ---------- Tipografia base ---------- */
[class~="font-heading"] { font-family: 'Poppins', sans-serif; }
[class~="font-body"] { font-family: 'Inter', sans-serif; }
[class~="antialiased"] { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

[class~="font-medium"] { font-weight: 500; }
[class~="font-semibold"] { font-weight: 600; }
[class~="font-bold"] { font-weight: 700; }
[class~="font-extrabold"] { font-weight: 800; }

[class~="text-xs"] { font-size: 0.75rem; line-height: 1rem; }
[class~="text-sm"] { font-size: 0.875rem; line-height: 1.25rem; }
[class~="text-lg"] { font-size: 1.125rem; line-height: 1.75rem; }
[class~="text-xl"] { font-size: 1.25rem; line-height: 1.75rem; }
[class~="text-2xl"] { font-size: 1.5rem; line-height: 2rem; }
[class~="text-3xl"] { font-size: 1.875rem; line-height: 2.25rem; }
[class~="text-4xl"] { font-size: 2.25rem; line-height: 2.5rem; }
[class~="text-5xl"] { font-size: 3rem; line-height: 1; }
[class~="text-6xl"] { font-size: 3.75rem; line-height: 1; }

[class~="leading-none"] { line-height: 1; }
[class~="leading-tight"] { line-height: 1.25; }
[class~="leading-relaxed"] { line-height: 1.625; }

[class~="text-center"] { text-align: center; }
[class~="text-left"] { text-align: left; }
[class~="whitespace-nowrap"] { white-space: nowrap; }

a[class~="hover:underline"]:hover { text-decoration: underline; }

/* ---------- Cores de texto ---------- */
[class~="text-white"] { color: #ffffff; }
[class~="text-slate-400"] { color: #94a3b8; }
[class~="text-slate-500"] { color: #64748b; }
[class~="text-slate-600"] { color: #475569; }
[class~="text-slate-700"] { color: #334155; }
[class~="text-slate-800"] { color: #1e293b; }
[class~="text-green-600"] { color: #16a34a; }
[class~="text-primary-50"] { color: #eef4ff; }
[class~="text-primary-100"] { color: #d9e6ff; }
[class~="text-primary-200"] { color: #b3ccff; }
[class~="text-primary-300"] { color: #80abff; }
[class~="text-primary-500"] { color: #2456f0; }
[class~="text-primary-600"] { color: #173dc7; }
[class~="text-primary-800"] { color: #0e2371; }
[class~="text-primary-900"] { color: #0a1a52; }
[class~="text-accent-400"] { color: #ffb800; }
[class~="text-accent-500"] { color: #ff9d00; }
[class~="text-primary-300"] { color: #80abff; }
[class~="!text-white"] { color: #ffffff !important; }
[class~="!text-accent-400"] { color: #ffb800 !important; }

/* ---------- Cores de fundo ---------- */
[class~="bg-white"] { background-color: #ffffff; }
[class~="bg-slate-50"] { background-color: #f8fafc; }
[class~="bg-green-100"] { background-color: #dcfce7; }
[class~="bg-primary-800"] { background-color: #0e2371; }
[class~="bg-primary-900"] { background-color: #0a1a52; }
[class~="bg-accent-500"] { background-color: #ff9d00; }
[class~="bg-white\/10"],
[class~="bg-white/10"] { background-color: rgba(255, 255, 255, 0.1); }
[class~="!bg-white/10"] { background-color: rgba(255, 255, 255, 0.1) !important; }
[class~="bg-accent-500/30"] { background-color: rgba(255, 157, 0, 0.3); }
[class~="bg-accent-500/20"] { background-color: rgba(255, 157, 0, 0.2); }
[class~="bg-accent-500/10"] { background-color: rgba(255, 157, 0, 0.1); }
[class~="bg-primary-400/20"] { background-color: rgba(77, 127, 255, 0.2); }
[class~="bg-primary-600/10"] { background-color: rgba(23, 61, 199, 0.1); }
[class~="bg-primary-600/30"] { background-color: rgba(23, 61, 199, 0.3); }
[class~="bg-green-500/10"] { background-color: rgba(34, 197, 94, 0.1); }
[class~="text-primary-900/80"] { color: rgba(10, 26, 82, 0.8); }

/* ---------- Gradientes (combinações específicas usadas no site) ---------- */
[class~="bg-gradient-to-br"][class~="from-primary-600"][class~="to-primary-800"] {
  background-image: linear-gradient(135deg, #173dc7, #0e2371);
}
[class~="bg-gradient-to-br"][class~="from-primary-900"][class~="via-primary-800"][class~="to-primary-600"] {
  background-image: linear-gradient(135deg, #0a1a52, #0e2371, #173dc7);
}
[class~="bg-gradient-to-t"][class~="from-primary-900/70"][class~="via-transparent"][class~="to-transparent"] {
  background-image: linear-gradient(to top, rgba(10, 26, 82, 0.7), transparent);
}
[class~="bg-gradient-to-br"][class~="from-primary-500"][class~="to-primary-700"] {
  background-image: linear-gradient(135deg, #2456f0, #122f9c);
}

/* ---------- Bordas ---------- */
[class~="border"] { border-width: 1px; border-style: solid; border-color: #e5e7eb; }
[class~="border-t"] { border-top-width: 1px; border-top-style: solid; border-color: #e5e7eb; }
[class~="border-b"] { border-bottom-width: 1px; border-bottom-style: solid; border-color: #e5e7eb; }
[class~="border-slate-100"] { border-color: #f1f5f9; }
[class~="border-primary-700"] { border-color: #122f9c; }
[class~="border-white/10"] { border-color: rgba(255, 255, 255, 0.1); }
[class~="border-white/20"] { border-color: rgba(255, 255, 255, 0.2); }

[class~="rounded-full"] { border-radius: 9999px; }
[class~="rounded-xl"] { border-radius: 0.75rem; }
[class~="rounded-2xl"] { border-radius: 1rem; }
[class~="rounded-3xl"] { border-radius: 1.5rem; }
[class~="rounded-lg"] { border-radius: 0.5rem; }

/* ---------- Sombras ---------- */
[class~="shadow-lg"] { box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1); }
[class~="shadow-xl"] { box-shadow: 0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1); }
[class~="shadow-2xl"] { box-shadow: 0 25px 50px -12px rgba(0,0,0,0.25); }

/* ---------- Efeitos ---------- */
[class~="blur-3xl"] { filter: blur(64px); }
[class~="backdrop-blur-sm"] { backdrop-filter: blur(4px); }
[class~="opacity-20"] { opacity: 0.2; }
[class~="pointer-events-none"] { pointer-events: none; }
[class~="object-cover"] { object-fit: cover; }
[class~="overflow-hidden"] { overflow: hidden; }

/* ---------- Transições ---------- */
[class~="transition"] { transition-property: color, background-color, border-color, box-shadow, opacity, transform, filter; transition-duration: 150ms; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
[class~="transition-all"] { transition-property: all; }
[class~="duration-300"] { transition-duration: 300ms; }

a[class~="hover:bg-accent-500"]:hover { background-color: #ff9d00; }

/* ---------- Posicionamento ---------- */
[class~="fixed"] { position: fixed; }
[class~="absolute"] { position: absolute; }
[class~="relative"] { position: relative; }
[class~="inset-0"] { top: 0; right: 0; bottom: 0; left: 0; }
[class~="top-0"] { top: 0; }
[class~="right-0"] { right: 0; }
[class~="bottom-0"] { bottom: 0; }
[class~="left-0"] { left: 0; }
[class~="z-40"] { z-index: 40; }
[class~="z-50"] { z-index: 50; }

[class~="-top-24"] { top: -6rem; }
[class~="-right-24"] { right: -6rem; }
[class~="-top-6"] { top: -1.5rem; }
[class~="-right-4"] { right: -1rem; }
[class~="-bottom-8"] { bottom: -2rem; }
[class~="-left-6"] { left: -1.5rem; }
[class~="-bottom-6"] { bottom: -1.5rem; }
[class~="-right-6"] { right: -1.5rem; }
[class~="-bottom-32"] { bottom: -8rem; }
[class~="-left-32"] { left: -8rem; }
[class~="bottom-6"] { bottom: 1.5rem; }
[class~="right-6"] { right: 1.5rem; }

/* ---------- Display / Flex / Grid ---------- */
[class~="block"] { display: block; }
[class~="inline-block"] { display: inline-block; }
[class~="flex"] { display: flex; }
[class~="inline-flex"] { display: inline-flex; }
[class~="grid"] { display: grid; }

[class~="flex-col"] { flex-direction: column; }
[class~="flex-wrap"] { flex-wrap: wrap; }
[class~="items-center"] { align-items: center; }
[class~="items-start"] { align-items: flex-start; }
[class~="justify-center"] { justify-content: center; }
[class~="justify-between"] { justify-content: space-between; }

[class~="grid-cols-1"] { grid-template-columns: repeat(1, minmax(0, 1fr)); }
[class~="grid-cols-2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* ---------- Espaçamentos (gap / padding / margin) ---------- */
[class~="gap-2"] { gap: 0.5rem; }
[class~="gap-3"] { gap: 0.75rem; }
[class~="gap-4"] { gap: 1rem; }
[class~="gap-5"] { gap: 1.25rem; }
[class~="gap-6"] { gap: 1.5rem; }
[class~="gap-8"] { gap: 2rem; }
[class~="gap-10"] { gap: 2.5rem; }
[class~="gap-12"] { gap: 3rem; }
[class~="gap-14"] { gap: 3.5rem; }
[class~="gap-x-10"] { column-gap: 2.5rem; }
[class~="gap-y-3"] { row-gap: 0.75rem; }

[class~="px-4"] { padding-left: 1rem; padding-right: 1rem; }
[class~="px-5"] { padding-left: 1.25rem; padding-right: 1.25rem; }
[class~="px-6"] { padding-left: 1.5rem; padding-right: 1.5rem; }
[class~="py-2"] { padding-top: 0.5rem; padding-bottom: 0.5rem; }
[class~="py-4"] { padding-top: 1rem; padding-bottom: 1rem; }
[class~="py-5"] { padding-top: 1.25rem; padding-bottom: 1.25rem; }
[class~="py-6"] { padding-top: 1.5rem; padding-bottom: 1.5rem; }
[class~="p-6"] { padding: 1.5rem; }
[class~="pt-6"] { padding-top: 1.5rem; }
[class~="pt-16"] { padding-top: 4rem; }
[class~="pt-32"] { padding-top: 8rem; }
[class~="pb-8"] { padding-bottom: 2rem; }
[class~="pb-24"] { padding-bottom: 6rem; }
[class~="py-16"] { padding-top: 4rem; padding-bottom: 4rem; }
[class~="py-20"] { padding-top: 5rem; padding-bottom: 5rem; }

[class~="mx-auto"] { margin-left: auto; margin-right: auto; }
[class~="mb-1"] { margin-bottom: 0.25rem; }
[class~="mb-2"] { margin-bottom: 0.5rem; }
[class~="mb-3"] { margin-bottom: 0.75rem; }
[class~="mb-4"] { margin-bottom: 1rem; }
[class~="mb-6"] { margin-bottom: 1.5rem; }
[class~="mb-8"] { margin-bottom: 2rem; }
[class~="mb-10"] { margin-bottom: 2.5rem; }
[class~="mb-12"] { margin-bottom: 3rem; }
[class~="mb-16"] { margin-bottom: 4rem; }
[class~="mt-1"] { margin-top: 0.25rem; }
[class~="mt-2"] { margin-top: 0.5rem; }
[class~="mt-10"] { margin-top: 2.5rem; }
[class~="ml-2"] { margin-left: 0.5rem; }

[class~="space-y-2"] > * + * { margin-top: 0.5rem; }
[class~="space-y-3"] > * + * { margin-top: 0.75rem; }
[class~="space-y-4"] > * + * { margin-top: 1rem; }
[class~="space-y-5"] > * + * { margin-top: 1.25rem; }
[class~="space-y-6"] > * + * { margin-top: 1.5rem; }

/* ---------- Tamanhos ---------- */
[class~="w-10"] { width: 2.5rem; }
[class~="w-11"] { width: 2.75rem; }
[class~="w-12"] { width: 3rem; }
[class~="w-56"] { width: 14rem; }
[class~="w-72"] { width: 18rem; }
[class~="w-96"] { width: 24rem; }
[class~="w-full"] { width: 100%; }

[class~="h-10"] { height: 2.5rem; }
[class~="h-11"] { height: 2.75rem; }
[class~="h-12"] { height: 3rem; }
[class~="h-72"] { height: 18rem; }
[class~="h-96"] { height: 24rem; }

[class~="h-\[420px\]"],
[class~="h-[420px]"] { height: 420px; }
[class~="h-\[380px\]"],
[class~="h-[380px]"] { height: 380px; }
[class~="h-\[340px\]"],
[class~="h-[340px]"] { height: 340px; }
[class~="max-w-\[220px\]"],
[class~="max-w-[220px]"] { max-width: 220px; }

[class~="max-w-xl"] { max-width: 36rem; }
[class~="max-w-2xl"] { max-width: 42rem; }
[class~="max-w-5xl"] { max-width: 64rem; }
[class~="max-w-7xl"] { max-width: 80rem; }

/* ==========================================================================
   RESPONSIVO — sm (>=640px)
   ========================================================================== */
@media (min-width: 640px) {
  [class~="sm:flex-row"] { flex-direction: row; }
  [class~="sm:grid-cols-2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ==========================================================================
   RESPONSIVO — md (>=768px)
   ========================================================================== */
@media (min-width: 768px) {
  [class~="md:flex"] { display: flex; }
  [class~="md:hidden"] { display: none; }
  [class~="md:order-1"] { order: 1; }
  [class~="md:order-2"] { order: 2; }
  [class~="md:grid-cols-2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [class~="md:grid-cols-3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  [class~="md:grid-cols-4"] { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  [class~="md:flex-row"] { flex-direction: row; }
  [class~="md:text-left"] { text-align: left; }

  [class~="md:text-sm"] { font-size: 0.875rem; line-height: 1.25rem; }
  [class~="md:text-xl"] { font-size: 1.25rem; line-height: 1.75rem; }
  [class~="md:text-2xl"] { font-size: 1.5rem; line-height: 2rem; }
  [class~="md:text-3xl"] { font-size: 1.875rem; line-height: 2.25rem; }
  [class~="md:text-5xl"] { font-size: 3rem; line-height: 1; }

  [class~="md:px-8"] { padding-left: 2rem; padding-right: 2rem; }
  [class~="md:py-28"] { padding-top: 7rem; padding-bottom: 7rem; }
  [class~="md:pt-40"] { padding-top: 10rem; }
  [class~="md:pb-32"] { padding-bottom: 8rem; }
  [class~="md:p-10"] { padding: 2.5rem; }

  [class~="md:-left-10"] { left: -2.5rem; }
  [class~="md:-right-8"] { right: -2rem; }

  [class~="md:h-\[480px\]"],
  [class~="md:h-[480px]"] { height: 480px; }
  [class~="md:h-\[440px\]"],
  [class~="md:h-[440px]"] { height: 440px; }
  [class~="md:h-\[400px\]"],
  [class~="md:h-[400px]"] { height: 400px; }
}

/* ==========================================================================
   RESPONSIVO — lg (>=1024px)
   ========================================================================== */
@media (min-width: 1024px) {
  [class~="lg:grid-cols-3"] { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  [class~="lg:text-6xl"] { font-size: 3.75rem; line-height: 1; }
}
