/* --------- GLOBAL VARIABLES (Citizen-led Renovation style) ---------- */
:root {
  --clr-blue: #0057b8;
  --clr-blue-hover: #0046a5;
  --clr-grey-bg: #f5f5f5;
  --clr-dark-text: #2c2c2c;
  --clr-accent-yellow: #ffd200;
  --clr-font: 'Open Sans', sans-serif;
}

/* --------- GENERAL PAGE STYLE ---------- */
body {
  font-family: var(--clr-font);
  background-color: var(--clr-grey-bg);
  color: var(--clr-dark-text);
  line-height: 1.6;
  font-size: 16px;
}

/* Remove unnecessary shadows & borders */
.container {
  box-shadow: none;
  border: none;
  background-color: white;
  padding: 2rem;
  border-radius: 10px;
  margin-top: 2rem;
}

/* Survey title */
h1#survey-name {
  color: var(--clr-blue);
  font-weight: bold;
  font-size: 2rem;
}

/* Section headers */
h2, h3, h4 {
  color: var(--clr-blue);
  margin-top: 1.5rem;
}

/* Question text */
.question-text {
  font-weight: 600;
  font-size: 1.1rem;
  margin-bottom: 0.5rem;
  color: var(--clr-dark-text);
}

/* Subtext or help text */
.question-help {
  color: #666;
  font-size: 0.9rem;
  margin-bottom: 1rem;
}

/* Input fields */
input[type="text"],
input[type="email"],
input[type="number"],
textarea,
select {
  width: 100%;
  padding: 0.6rem;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 1rem;
  margin-bottom: 1rem;
  transition: border-color 0.3s ease-in-out;
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--clr-blue);
  outline: none;
}

/* Radio/Checkbox options */
.answer-item {
  margin-bottom: 0.5rem;
}
.answer-item label {
  font-size: 1rem;
}

/* Progress bar */
.progress {
  background-color: #ddd;
  height: 20px;
  border-radius: 10px;
  overflow: hidden;
}
.progress-bar {
  background-color: var(--clr-blue);
  height: 100%;
  transition: width 0.5s;
}

/* Question group headers */
.group-name {
  background-color: var(--clr-blue);
  color: white;
  padding: 1rem;
  border-radius: 8px;
  margin-bottom: 1rem;
  font-size: 1.3rem;
}

/* Buttons */
.btn {
  background-color: var(--clr-blue);
  border: none;
  color: white;
  padding: 0.6rem 1.2rem;
  font-size: 1rem;
  border-radius: 6px;
  transition: background-color 0.3s ease;
}
.btn:hover {
  background-color: var(--clr-blue-hover);
}

/* Error & Validation Messages */
.alert-danger,
.ls-error-mandatory,
em.error {
    
    /upload/surveys/326183/images/CLR-logo.png
  color: #c0392b;
  font-weight: bold;
}

/* Survey footer */
#footer {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid #ccc;
  text-align: center;
  font-size: 0.9rem;
  color: #777;
}

/* Responsive tweaks */
@media (max-width: 768px) {
  .container {
    padding: 1rem;
  }
  h1#survey-name {
    font-size: 1.5rem;
  }
  .btn {
    width: 100%;
    margin-bottom: 1rem;
  }
  
  
  
  
  #header::before {
  content: "";
  display: block;
  background-image: url("/upload/surveys/326183/images/CLR-logo.png");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  height: 80px;
  margin-bottom: 20px;
}
}