:root {
  --pine: #334155;
  --pine-2: #475569;
  --ivory: #FFFFFF;
  --ivory-2: #F8FAFC;
  --brass: #10B981;
  --brass-2: #059669;
  --ink: #1E293B;
  --clay: #10B981;
  --paper: #FFFFFF;
  --rule: #E2E8F0;
  --mute: #64748B;
  --shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Modernizing global elements */
body::before {
  opacity: 0.3 !important;
}

.btn {
  border-radius: var(--radius-md) !important;
  transition: var(--transition) !important;
  box-shadow: var(--shadow) !important;
  font-weight: 500 !important;
}

.btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--shadow-lg) !important;
}

.elig, .step, .card, .flow, .form-wide, .canton-tile, .quote {
  border-radius: var(--radius-lg) !important;
  transition: var(--transition) !important;
  box-shadow: var(--shadow) !important;
}

.elig:hover, .step:hover, .card:hover, .canton-tile:hover, .quote:hover {
  transform: translateY(-5px) !important;
  box-shadow: var(--shadow-xl) !important;
}

.seg, .field input, .field select, .field textarea {
  border-radius: var(--radius-md) !important;
}

.compare {
  border-radius: var(--radius-lg) !important;
  overflow: hidden;
}

.badge {
  border-radius: var(--radius-md) !important;
}

/* Language switchers: make the active locale explicit */
.lang a.active,
.lang a.active b {
  color: var(--brass-2) !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}

.lang a:not(.active) {
  color: var(--pine) !important;
}

.dlang a.active,
.dlang a.active b,
.chips .chip.active,
.chips .chip.active b {
  color: var(--ivory) !important;
  font-weight: 600 !important;
}
