@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@300;400;500;600;700&display=swap');

/* ========== Variáveis (equivalentes ao React/Tailwind) ========== */
:root {
  --background: 220 20% 4%;
  --foreground: 40 50% 90%;
  --card: 220 15% 8%;
  --card-foreground: 40 50% 90%;
  --primary: 42 90% 55%;
  --primary-foreground: 220 20% 4%;
  --secondary: 220 15% 14%;
  --muted: 220 15% 12%;
  --muted-foreground: 220 10% 55%;
  --border: 220 15% 16%;
  --radius: 0.75rem;
}

/* ========== Base ========== */
* {
  box-sizing: border-box;
  border-color: hsl(var(--border));
}

body {
  margin: 0;
  min-height: 100vh;
  background: hsl(var(--background));
  color: hsl(var(--foreground));
  font-family: 'Inter', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3 {
  font-family: 'Bebas Neue', sans-serif;
}

/* ========== Utilitários ========== */
.text-gold-gradient {
  background: linear-gradient(135deg, hsl(42 90% 55%), hsl(35 85% 65%), hsl(42 90% 55%));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.border-gold {
  border-color: hsl(42 90% 55% / 0.3);
}

.font-display {
  font-family: 'Bebas Neue', sans-serif;
}

/* Animação do botão CTA */
@keyframes pulse-glow {
  0%, 100% { box-shadow: 0 0 20px hsl(42 90% 55% / 0.2); }
  50% { box-shadow: 0 0 40px hsl(42 90% 55% / 0.4); }
}

.animate-pulse-glow {
  animation: pulse-glow 2s ease-in-out infinite;
}

/* ========== Layout principal (page) ========== */
.page {
  min-height: 100vh;
  background: hsl(var(--background));
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3rem 1rem;
}

@media (min-width: 768px) {
  .page {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

/* Efeito de fundo: brilho dourado no topo (idêntico ao React) */
.ambient-glow {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  /* ellipse at top, dourado 4% opacidade em 0%, transparente em 60% */
  background: radial-gradient(
    ellipse at top,
    hsl(42, 90%, 55%, 0.04) 0%,
    transparent 60%
  );
}

.content {
  position: relative;
  z-index: 10;
  width: 100%;
  max-width: 42rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.5rem;
}

/* ========== Header (logo + intro) ========== */
.header {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1rem;
}

.header img {
  width: 10rem;
  height: 10rem;
  object-fit: contain;
}

@media (min-width: 768px) {
  .header img {
    width: 13rem;
    height: 13rem;
  }
}

.header h1 {
  font-size: 2.25rem;
  letter-spacing: 0.05em;
  line-height: 1;
  margin: 0;
}

@media (min-width: 768px) {
  .header h1 {
    font-size: 3.75rem;
  }
}

.header .subtitle {
  color: hsl(var(--muted-foreground));
  font-size: 0.875rem;
  margin-top: 0.25rem;
}

.header .intro {
  color: hsl(var(--foreground) / 0.75);
  max-width: 32rem;
  line-height: 1.625;
}

.header .intro .highlight {
  color: hsl(var(--primary));
  font-weight: 600;
}

/* ========== Benefits grid ========== */
.benefits {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

@media (min-width: 640px) {
  .benefits {
    grid-template-columns: repeat(2, 1fr);
  }
}

.benefit-card {
  background: hsl(var(--card));
  border: 1px solid hsl(42 90% 55% / 0.3);
  border-radius: var(--radius);
  padding: 1.25rem;
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
}

.benefit-icon {
  background: hsl(var(--primary) / 0.1);
  padding: 0.625rem;
  border-radius: 0.375rem;
  flex-shrink: 0;
}

.benefit-icon svg {
  width: 1.25rem;
  height: 1.25rem;
  color: hsl(var(--primary));
}

.benefit-card h3 {
  font-size: 1.25rem;
  color: hsl(var(--primary));
  letter-spacing: 0.025em;
  line-height: 1.25;
  margin: 0;
}

.benefit-card p {
  color: hsl(var(--foreground) / 0.6);
  font-size: 0.875rem;
  margin-top: 0.25rem;
  margin-bottom: 0;
}

/* ========== Rake table section ========== */
.rake-section {
  width: 100%;
}

.rake-section h2 {
  font-size: 1.875rem;
  text-align: center;
  letter-spacing: 0.025em;
  margin-bottom: 0.25rem;
  margin-top: 0;
}

@media (min-width: 768px) {
  .rake-section h2 {
    font-size: 2.25rem;
  }
}

.rake-section .table-caption {
  text-align: center;
  color: hsl(var(--muted-foreground));
  font-size: 0.875rem;
  margin-bottom: 1.25rem;
}

.rake-table {
  background: hsl(var(--card));
  border: 1px solid hsl(42 90% 55% / 0.3);
  border-radius: var(--radius);
  overflow: hidden;
}

.rake-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 0.625rem 1.25rem;
}

.rake-row + .rake-row {
  border-top: 1px solid hsl(var(--border));
}

.rake-row .pct {
  color: hsl(var(--primary));
  font-weight: 700;
}

.rake-row .amount {
  text-align: right;
  color: hsl(var(--foreground) / 0.7);
}

.rake-note {
  color: hsl(var(--muted-foreground));
  font-size: 0.75rem;
  margin-top: 0.5rem;
  text-align: center;
}

/* ========== CTA button ========== */
.cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  width: 100%;
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  font-weight: 700;
  font-size: 1.125rem;
  padding: 1rem 2.5rem;
  border-radius: var(--radius);
  text-decoration: none;
  transition: filter 0.2s;
}

.cta:hover {
  filter: brightness(1.1);
}

@media (min-width: 640px) {
  .cta {
    width: auto;
  }
}

.cta svg {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}

/* Footer: usa o fixo/footer.php do site */
