body {
  font-family: 'Poppins', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
    Roboto, Arial, 'Helvetica Neue', sans-serif;
}

/* ------- Tiny helper for fade-in on scroll -------- */
.fade-start {
  opacity: 0;
  transform: translateY(32px);
  transition: all 0.6s ease-out;
}

.fade-end {
  opacity: 1;
  transform: translateY(0);
}

input[type='radio'].modern-radio {
  appearance: none;
  -webkit-appearance: none;
  background-color: #fff;
  border: 2px solid #0a1c47;
  width: 20px;
  height: 20px;
  border-radius: 9999px;
  display: inline-block;
  position: relative;
  vertical-align: middle;
  transition: border 0.2s;
  outline: none;
  box-shadow: none;
  cursor: pointer;
}

input[type='radio'].modern-radio:checked {
  border: 2px solid #0a1c47;
}

input[type='radio'].modern-radio:checked::before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  background: #0a1c47;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

input[type='radio'].modern-radio:focus {
  box-shadow: 0 0 0 2px #0a1c47;
}

summary::-webkit-details-marker {
  display: none;
}

summary::marker {
  display: none;
}

/* Add these new rules to ensure complete marker removal */
details summary {
  list-style: none;
}

details summary::-webkit-details-marker {
  display: none;
}

details summary::marker {
  display: none;
}

/* Hide scrollbar but keep functionality */
.hide-scrollbar {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}
.hide-scrollbar::-webkit-scrollbar {
  display: none; /* Chrome, Safari and Opera */
}
