.row {
  margin-bottom: 20px;
}

.with-toggle {
  margin-top: 10px !important;
  margin-bottom: 20px !important;
}

.cf7sg-title {
  color: var(--cf7-labels);
}

.toggle-on {
  background-color: var(--cf7-accent) !important;
}

.wpcf7-list-item-label {
  color: var(--cf7-input-text);
}

.cf7sg-collapsible-title {
  border-radius: 8px;
  border-width: 0px;
}

.cf7sg-collapsible:not(.with-toggle) > .cf7sg-collapsible-title {
  background-color: rgba(0,0,0,0.1) !important;
}

.toggle {
  width: 60px;
}

.wpcf7-form-control {
  border-radius: 8px !important;
}

input, button {
  border-radius: 8px !important;
}

.form-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

input:focus {
  border-color: #007BFF;
}

button:hover {
  background-color: #0056b3;
  color: #fff;
}

button {
  transition: background-color 0.3s ease;
}                                          

.form-label {
  margin-top:  10px;
  margin-bottom:  0px;
}

.wpcf7-list-item-label {
  margin-left:  4px;
}

fieldset {
  margin: 20px;
  padding: 0 10px 10px;
  border: 1px solid #666;
  border-radius: 8px;
}


label>em {
  padding: 0 4px 4px;
}

label {
  margin-top: 12px;
  margin-bottom: 8px !important;
}

span.wpcf7-not-valid-tip {
  display: none;
}

input.wpcf7-text, 
input.wpcf7-date,
input.wpcf7-form-control,
span.select2-selection {
  width: 95% !important;
  border: 0px solid #666;
  border-radius: 8px !important;
}

.select2 {
  width: 100%;
}


/* Styles configuration */
:root {
  --cf7-font: inherit;
  --cf7-font-size: 16px;
  --cf7-font-weight: 300;
  --cf7-labels: #5a6e81;
  --cf7-input-text: #000;
  --cf7-accent: #2d8cff;
  --cf7-accent-hover: #247de9;
  --cf7-accent-outline: #b9d9ff;
  --cf7-accent-text: #ffffff;
  --cf7-warning: #fb584e;
  --cf7-warning-bg: #FFEDEC;
  --cf7-success: #00B474;
  --cf7-success-bg: #E6FFF0;
}
/* General Settings */
.wpcf7 {
  font-family: var(--cf7-font);
  font-weight: var(--cf7-font-weight);
  width: 100% !important;
}
.wpcf7 label {
  color: var(--cf7-labels);
}
.wpcf7-list-item {
  margin-left: 0 !important;
  margin-right: 15px !important;
}
.wpcf7 a {
  color: var(--cf7-accent) !important;
  text-decoration: none;
}
.wpcf7 a:hover {
  color: var(--cf7-accent-hover) !important;
}
/* General Inputs */
.wpcf7 input[type=color],
.wpcf7 input[type=date],
.wpcf7 input[type=datetime-local],
.wpcf7 input[type=datetime],
.wpcf7 input[type=email],
.wpcf7 input[type=confirm_email],
.wpcf7 input[type=month],
.wpcf7 input[type=number],
.wpcf7 input[type=search],
.wpcf7 input[type=tel],
.wpcf7 input[type=text],
.wpcf7 input[type=time],
.wpcf7 input[type=url],
.wpcf7 input[type=week],
.wpcf7 textarea
{
  border: 1px solid #D5E0EB;
  background-color: #ffffff;
  border-radius: 8px;
  line-height: 1.3;
  padding: .375rem .75rem;
  color: var(--cf7-input-text);
  min-height: 35px;
  font-size: var(--cf7-font-size);
  font-weight: var(--cf7-font-weight);
  font-family: var(--cf7-font);
  width: 95%;

}
/* Other Inputs */
.wpcf7 input[type=submit] {
  background-color: var(--cf7-accent);
  color: var(--cf7-accent-text);
  border: 0;
  padding: 15px 30px;
  border-radius: 6px;
  font-size: var(--cf7-font-size);
  font-family: var(--cf7-font);
  transition: .2s linear;
}
.wpcf7 input:hover[type=submit] {
  background-color: var(--cf7-accent-hover);
  transition: .2s linear;
  cursor: pointer;
}
.wpcf7 input:focus[type=submit] {
  background-color: var(--cf7-accent-hover);
  outline: none;
  border: 0;
  box-shadow: 0 0 0 3px var(--cf7-accent-outline);
}
.wpcf7 input[type=file] {
  color: var(--cf7-input-text);
  font-size: var(--cf7-font-size);
  font-weight: var(--cf7-font-weight);
  font-family: var(--cf7-font);
}
.wpcf7 input:focus[type=file] {
  outline: none;
  border: 0;
}
.wpcf7 input[type=file]::file-selector-button,
.wpcf7 select
{
  border: 1px solid #D5E0EB;
  background-color: #ffffff;
  border-radius: 6px;
  line-height: 1.3;
  padding: 0.7rem 1rem;
  color: var(--cf7-input-text);
  min-height: 35px;
  font-size: var(--cf7-font-size);
  font-weight: var(--cf7-font-weight);
  font-family: var(--cf7-font);
}
.wpcf7 input[type=file]::file-selector-button {
  cursor: pointer;
  margin-right: 20px;
}

/* Invalid Fields */
.wpcf7-not-valid-tip {
  color: var(--cf7-warning) !important;
  font-size: var(--cf7-font-size) !important;
  font-weight: var(--cf7-font-weight) !important;
}
.wpcf7-not-valid:not(input[type=file]):not(span){
  border-color: #FFBAB6 !important;
  background-color: #FFFAFA !important;
}
.wpcf7 input:disabled[type=submit],
.wpcf7 input:disabled[type=submit]:hover
{
  color: #ffffff;
  background-color: var(--cf7-warning);
  border:0;
  cursor: not-allowed;
}

/* Response Messages */
.wpcf7 form.init .cf7sg-response-output {
  display: none;
}
.wpcf7 form .cf7sg-response-output { /* Default */
  margin: 15px 0 !important;
  padding: 10px 20px !important;
  border: 0 !important;
  border-radius: 6px !important;
}
.wpcf7 form.sent .cf7sg-response-output { /* Success */
  background-color: var(--cf7-success-bg) !important;
  color: var(--cf7-success) !important;
  border: 0 !important;
}
.wpcf7 form.failed .cf7sg-response-output,
.wpcf7 form.aborted .cf7sg-response-output,
.wpcf7 form.spam .cf7sg-response-output,
.wpcf7 form.invalid .cf7sg-response-output,
.wpcf7 form.unaccepted .cf7sg-response-output{ /* Failed */
  background-color: var(--cf7-warning-bg) !important;
  color: var(--cf7-warning) !important;
  border: 0 !important;
}

                                                                                                                                                                                                                                                                                                                                          