/* Down Under Pest Control — design tokens (Navy/Black/Grey/White) */
:root {
  --background: 0 0% 100%;
  --foreground: 220 30% 12%;
  --card: 0 0% 100%;
  --primary: 220 35% 18%;
  --primary-foreground: 0 0% 99%;
  --primary-deep: 220 40% 9%;
  --secondary: 220 14% 96%;
  --muted: 220 12% 94%;
  --muted-foreground: 220 8% 42%;
  --border: 220 13% 90%;
  --input: 220 13% 90%;
  --gold: 220 5% 85%;        /* light silver */
  --gold-deep: 220 4% 50%;   /* steel grey */
}

html { scroll-behavior: smooth; }

.bg-gradient-gold { background: linear-gradient(135deg, hsl(220 6% 92%), hsl(220 6% 70%)); }
.text-gradient-gold {
  background: linear-gradient(135deg, hsl(220 6% 92%), hsl(220 6% 70%));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.shadow-elegant { box-shadow: 0 20px 60px -20px rgba(8, 14, 30, 0.5); }
.shadow-gold { box-shadow: 0 10px 30px -10px rgba(60, 70, 90, 0.45); }

/* Hero entrance */
@keyframes float-up {
  0% { transform: translateY(20px); opacity: 0; }
  100% { transform: translateY(0); opacity: 1; }
}
.animate-float-up { animation: float-up 0.8s ease-out both; }

/* Wizard option states */
.opt-btn {
  text-align: left; border: 1px solid hsl(var(--border)); border-radius: 0.75rem;
  padding: 1rem; display: flex; gap: 0.75rem; align-items: flex-start;
  background: hsl(var(--card)); transition: all 0.2s ease; cursor: pointer; width: 100%;
}
.opt-btn:hover { border-color: hsl(var(--primary) / 0.4); background: hsl(var(--secondary)); }
.opt-btn.active { border-color: hsl(var(--primary)); background: hsl(var(--primary) / 0.06); box-shadow: inset 0 0 0 1px hsl(var(--primary)); }
.opt-icon { width: 2.25rem; height: 2.25rem; border-radius: 0.5rem; display: flex; align-items: center; justify-content: center; flex-shrink: 0; background: hsl(var(--secondary)); color: hsl(var(--primary)); font-size: 1rem; }
.opt-btn.active .opt-icon { background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); }

.wizard-input {
  width: 100%; border-radius: 0.75rem; border: 1px solid hsl(var(--input));
  background: hsl(var(--background)); padding: 0.75rem 1rem; font-size: 0.875rem;
  margin-top: 0.375rem; outline: none; transition: box-shadow 0.15s;
}
.wizard-input:focus { box-shadow: 0 0 0 2px hsl(var(--primary) / 0.3); }

.btn-primary {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.375rem;
  background: hsl(var(--primary)); color: hsl(var(--primary-foreground));
  border-radius: 9999px; padding: 0 1.5rem; height: 3rem; font-weight: 600;
  cursor: pointer; border: none; transition: opacity 0.15s; font-size: 0.95rem;
}
.btn-primary:hover { opacity: 0.92; }
.btn-primary:disabled { opacity: 0.5; cursor: not-allowed; }
