/*--------------------*/
/*  Form Block        */
/*--------------------*/
.form-block {--space: 1.5rem;}
.form-block .row {--bs-gutter-x: var(--space);--bs-gutter-y: var(--space);}
.form-block > * {margin-bottom: var(--space);}
.form-block > *:last-child {margin-bottom: 0;}
@media (max-width: 1199px) {
.form-block {--space: 1.25rem;}
}
@media (max-width: 991px) {
.form-block {--space: 1rem;}
}
/*--------------------*/
/*  Inputs            */
/*--------------------*/
.input-field {--int-height: 2.8125rem;--int-pd: 0.875rem;--font-size: 0.975rem;display: block;position: relative;text-align: left;line-height: 0;font-size: var(--font-size);}
.input {position: relative;z-index: 1;font-weight: 400;font-size: var(--font-size);line-height: var(--int-height);height: var(--int-height);padding: var(--int-pd);text-overflow: ellipsis;color: #000;border-radius: var(--rd-1);border: 0.0625rem solid var(--clr-input);transition: var(--transition-1);}
textarea.input {height: 8.75rem;line-height: 1.38em;}
.input-placeholder {display: inline-block;pointer-events: none;position: absolute;text-align: left;z-index: 2;top: 0;left: calc(var(--int-pd) - 0.25em);transform: translateY(calc((var(--int-height) - 1.25em) / 2));font-size: var(--font-size);line-height: 1.25em;font-weight: 400;color: var(--clr-text);padding-inline: 0.25em;max-width: calc(100% - var(--int-pd) * 2);display: -webkit-box;-webkit-line-clamp: 1;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;background-color: var(--clr-white);transition: var(--transition-1);}
textarea.input + .input-placeholder {transform: translateY(var(--int-pd));}
.input-error {font-size: 0.75rem;line-height: 1.5em;font-weight: 400;color: var(--clr-red);margin-top: 0.25rem;display: none;}
.input-success {font-size: 0.75rem;line-height: 1.5em;font-weight: 400;color: var(--clr-green);margin-top: 0.25rem;display: none;}
.phone-input {display: flex;align-items: center;border-radius: var(--rd-1);border: 0.0625rem solid var(--clr-input);}
.phone-input > * {border: none;}
.phone-input .SumoSelect {width: auto;flex-shrink: 0;border-right: 0.0625rem solid var(--clr-input);}
.phone-input .SumoSelect > .CaptionCont {border: none;padding-right: calc(var(--sel-p) * 3.5);}
.input-field.focus {z-index: 5;}
.input-field.focus .input-placeholder,
.input-field.value .input-placeholder {font-size: calc(var(--font-size) * 0.8755);transform: translateY(-0.625em);}
.input-field:where(.focus) .input {border-color: var(--clr-black);}
.input-field.invalid:not(.value) .input,
.input-field.invalid-email .input {border-color: var(--clr-red);}
.input-field.invalid:not(.value) .input-error,
.input-field.invalid-email .input-error {display: block;}
.form-success {
    display: none;
    text-align: center;
    padding: 15px;
    margin-top: 20px;
    background-color: #e8f5e9;
    border-radius: 5px;
    border-left: 4px solid #007818;
    animation: fadeInUp 0.5s ease;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/*--------------------*/
/*  Autofill          */
/*--------------------*/
.input-field.focus .input:not(textarea):-webkit-autofill,
.input-field.value .input:not(textarea):-webkit-autofill,
.input-field.focus .input:not(textarea):-webkit-autofill:hover,
.input-field.value .input:not(textarea):-webkit-autofill:hover,
.input-field.focus .input:not(textarea):-webkit-autofill:focus,
.input-field.value .input:not(textarea):-webkit-autofill:focus,
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {border: 0;-webkit-text-fill-color: var(--clr-black);-webkit-box-shadow: inset 0 0 0 0.0625rem var(--clr-black),inset 0 0 6.25rem var(--clr-white);-webkit-transition: background-color 5000s ease-in-out 0s;transition: background-color 5000s ease-in-out 0s;}
/*--------------------*/
/*  Checkbox & Radio  */
/*--------------------*/
.ch-box-wrap {gap: 1rem;display: flex;flex-wrap: wrap;}
.ch-box {--ch-size: 1rem;--lh-size: calc(var(--ch-size) * 1.25);cursor: pointer;font-size: var(--ch-size);line-height: var(--lh-size);text-align: left;gap: calc(var(--ch-size) / 2);display: inline-flex;align-items: center;}
.ch-box a {color: var(--clr-primary);text-decoration: underline;text-decoration-color: transparent;}
.ch-box input[type=radio],
.ch-box input[type=checkbox] {display: inline-block;position: relative;vertical-align: text-top;color: var(--clr-input);height: var(--lh-size);width: var(--lh-size);flex-shrink: 0;align-self: baseline;border-radius: 0.25rem;border: 0.0625rem solid currentColor;}
.ch-box input[type=radio]:before,
.ch-box input[type=checkbox]:before {content: "";position: absolute;top: 50%;left: 50%;display: block;width: 66.68%;height: 66.68%;transform: translate(-50%, -50%) scale(0);border-radius: inherit;background-color: currentColor;transition: var(--transition-1);}
.ch-box input[type=radio]:checked,
.ch-box input[type=checkbox]:checked {color: var(--clr-primary);}
.ch-box input[type=radio]:checked:before,
.ch-box input[type=checkbox]:checked:before {transform: translate(-50%, -50%) scale(1);}
.ch-box input[type=radio] {border-radius: 100%;}
@media (min-width: 1200px) {
.ch-box a:not(.btn):hover {text-decoration-color: currentColor;}
}
@media (max-width: 575px) {
.ch-box-wrap {align-items: flex-start;flex-direction: column;}
}
/*--------------------*/
/*  Select            */
/*--------------------*/
.SumoSelect {--sel-p: 0.925rem;--sel-h: 2.8125rem;--sel-fz: 0.975rem;--sel-items: 4;--opt-p: 0.625rem;--opt-lh: calc(var(--sel-fz) * 1.125);--max-height: calc((var(--opt-p) * 2 + var(--opt-lh)) * var(--sel-items) + var(--opt-p) * 2);cursor: pointer;z-index: 1;width: 100%;}
.SumoUnder {z-index: 0;padding: 0;margin: 0;line-height: 0;font-size: 0;display: none;backface-visibility: hidden;}
.SumoSelect > .CaptionCont {z-index: 1;text-align: left;height: var(--sel-h);padding: var(--sel-p);padding-right: calc(var(--sel-p) * 2.5);background: var(--clr-white);border-radius: var(--rd-1);color: var(--clr-black);border: 0.0625rem solid var(--clr-input);transition: var(--transition-1);}
.SumoSelect > .CaptionCont > span {cursor: pointer;padding-right: 0;font-size: var(--sel-fz);font-weight: 400;line-height: calc(var(--sel-h) - var(--sel-p) * 2);color: currentColor;backface-visibility: hidden;}
.SumoSelect > .CaptionCont > span.placeholder {font-style: normal;color: var(--clr-text);display: none;}
.SumoSelect > .CaptionCont > label {display: inline-block;cursor: pointer;width: 1.25rem;height: 1.25rem;color: currentColor;right: var(--sel-p);bottom: auto;top: 50%;transform: translateY(-50%);transition: var(--transition-1);}
.SumoSelect > .CaptionCont > label i {background-image: none;opacity: 1;width: 0.625rem;height: 0.625rem;top: 40%;left: 50%;right: auto;bottom: auto;color: currentColor;border-right: 0.0625rem solid currentColor;border-bottom: 0.0625rem solid currentColor;transform: translate(-50%, -50%) rotate(45deg);}
.SumoSelect > .optWrapper {display: block;overflow: auto;z-index: 2;padding: 0;top: 100%;left: 0;width: 100%;border: 0.0625rem solid var(--clr-black);border-top: none;border-radius: 0 0 var(--rd-1) var(--rd-1);opacity: 0;visibility: hidden;backface-visibility: hidden;background-color: var(--clr-white);box-shadow: 0 0.625rem 1rem 0 rgba(0, 0, 0, 0.07);transition: 0s;}
.SumoSelect > .optWrapper > .options {font-size: var(--sel-fz);max-height: var(--max-height);padding: var(--opt-p) 0;border-radius: 0 !important;}
.SumoSelect > .optWrapper > .options li.opt {padding: 0;border-bottom: 0;}
.SumoSelect > .optWrapper > .options li label {white-space: unset;text-align: left;padding: var(--opt-p) var(--sel-p);font-size: var(--sel-fz);line-height: var(--opt-lh);font-weight: 400;color: var(--clr-black);transition: var(--transition-1);}
.SumoSelect > .optWrapper > .options li.opt.selected label {color: var(--clr-primary);}
.SumoSelect > .optWrapper > .options > .opt.disabled:first-child {display: none !important;}
.SumoSelect > .optWrapper > .options li.group > label {padding: var(--opt-p) var(--sel-p);font-weight: 600;}
.SumoSelect > .optWrapper > .options li ul li.opt {padding-left: var(--opt-p);}
.SumoSelect:focus > .CaptionCont,
.SumoSelect:hover > .CaptionCont {box-shadow: none;border-color: var(--clr-grey);}
.SumoSelect.open > .CaptionCont {border-color: var(--clr-black);border-bottom-right-radius: 0;border-bottom-left-radius: 0;}
.SumoSelect.open > .CaptionCont > label {transform: translateY(-50%) rotateX(180deg);}
.SumoSelect.open > .optWrapper {top: 100%;opacity: 1;visibility: visible;transition: var(--transition-1);transition-delay: 0.2s;}
.SumoSelect.disabled {opacity: 0.5;}
.SumoSelect.disabled > .CaptionCont {cursor: not-allowed;}
.SumoSelect.disabled > .CaptionCont > span {cursor: not-allowed;}
@media (min-width: 1200px) {
.SumoSelect > .optWrapper > .options li.opt:hover label {background-color: var(--clr-grey);}
}
