/* ==============================
   CF7 validation messages
============================== */
.wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: 16px!important;
    font-weight: normal;
    display: block !important;
}
.wpcf7-response-output:empty {
    display: none !important;
    visibility: hidden !important;
}

/* ==============================
   Site-wide rules kept from the removed calendar styles.
   These are not scoped to the contact form, so they affect every
   matching element on the site - remove only after confirming unused.
============================== */
.controls{
  display: none!important;
}
select {
  padding: 5px 10px;
}
@media (max-width: 575.98px) {
  .form-select.w-auto {
    font-size: 14px;
    padding: 4px 6px;
  }
}

/* Site reviews */
/* ==============================
   Global Form Layout
============================== */
.glsr-review-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 25px 40px;
  font-family: "Plus Jakarta Sans", Sans-serif;
  color: #333;
}
.glsr-default form.glsr-form .glsr-field-toggle input[type=checkbox]:checked+.glsr-toggle-track:before {
  background-color: #2ECC71 !important;
}
/* ==============================
   Labels
============================== */
.glsr-label span {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
  font-size: 19px;
  color: #242E45!important;
}

/* ==============================
   Input, Select & Textarea
============================== */
.glsr-input,
.glsr-select,
.glsr-textarea {
  width: 100% !important;
  padding: 12px 25px 12px 0px !important;
  border: none !important;
  border-bottom: 1px solid #dfdfdf !important;
  background: transparent !important;
  border-radius: 0px !important;
  font-size: 15px !important;
  color: #333 !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  outline: none!important;
  box-shadow: none!important;
}
.glsr-default form.glsr-form .glsr-toggle input[type=checkbox]:focus+.glsr-toggle-track {
  box-shadow: 0 0 !important;
  box-shadow: 0 0 0 0px -moz-mac-focusring!important;
  box-shadow: 0 0 0 0px -webkit-focus-ring-color!important;
  outline: none !important;
}
/* On focus */
.glsr-input:focus,
.glsr-select:focus,
.glsr-textarea:focus {
  border-bottom-color: #b9b9b9!important;
  outline: none;
  box-shadow: none;
}

/* Placeholder text */
.glsr-input::placeholder,
.glsr-select::placeholder,
.glsr-textarea::placeholder {
  color: #999;
  font-family: "Plus Jakarta Sans", Sans-serif;
}

/* ==============================
   Textarea
============================== */
.glsr-textarea {
  min-height: 100px!important;
  resize: vertical;
}

/* ==============================
   Rating and Checkbox Fields
============================== */
.glsr-field-rating select,
.glsr-field-choice input[type="checkbox"] {
  accent-color: #2ECC71!important;
}

/* ==============================
   Submit Button (CTA)
============================== */
.glsr-button {
  background-color: #2ECC71!important;
  font-family: "Plus Jakarta Sans", Sans-serif!important;
  font-size: 16px!important;
  font-weight: 500!important;
  color: #fff!important;
  border-style: solid!important;
  border-color: #2ECC71!important;
  border-radius: 50px!important;
  padding: 16px 30px!important;
  box-shadow: 0px 8px 30px 0px rgba(0, 0, 0, 0.15)!important;
  cursor: pointer!important;
}

/* Button hover */
.glsr-button:hover {
  transform: translateY(-2px)!important;
}

/* ==============================
   Error Messages
============================== */
.glsr-field-error {
  font-size: 13px;
  color: #e74c3c;
  margin-top: 4px;
}

/* multiple select */
span.wpcf7-form-control-wrap input.choices__input.choices__input--cloned {
    padding: 0px !important;
    background-color: transparent;
}
span.wpcf7-form-control-wrap input.choices__input.choices__input--cloned::placeholder {
    color: #242E45 !important;
    font-size: 16px !important;
    font-weight: 400;
    opacity: 1 !important; /* ensure color shows (some browsers dim placeholders) */
}
span.wpcf7-form-control-wrap input.choices__input.choices__input--cloned:focus {
    outline: none !important;
    border: none !important;
}
span.wpcf7-form-control-wrap .choices__list.choices__list--multiple {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    width: fit-content;
}
span.wpcf7-form-control-wrap  .choices__list.choices__list--multiple .choices__item.choices__item--selectable {
    border-radius: 20px;
    padding: 5px 10px !important;
    align-items: center;
    border: 1px solid #f6edfc;
    background-color: #f6edfc;
    color: #242E45 !important;
    white-space: nowrap;
    vertical-align: top;
    cursor: default;
    margin: 0px !important;
}
span.wpcf7-form-control-wrap .choices__inner{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}
span.wpcf7-form-control-wrap  button.choices__button {
    filter: invert(1) brightness(0);
}
span.wpcf7-form-control-wrap .choices__heading {
    color: #2ecc71;
    padding-left: 15px!important;
}

/* ==============================
   Responsive
============================== */
@media (max-width: 768px) {
  .glsr-review-form {
    grid-template-columns: 1fr;
  }
}
