/*======================*/
/*  Inputs              */
/*======================*/
.input-field {--int-height: 3rem;--int-pd: 0.75rem;--font-size: 1rem;display: block;position: relative;font-size: var(--font-size);line-height: 0;text-align: left;}
.input {position: relative;z-index: 1;transition: var(--transition-1);border-radius: 1rem;background-color: var(--clr-border);border: 1px solid var(--clr-border);font-size: var(--font-size);font-weight: 400;line-height: var(--int-height);height: var(--int-height);color: var(--clr-title);text-overflow: ellipsis;padding: var(--int-pd);}
.input:focus,
.input:hover {border-color: var(--clr-title);}
textarea.input {line-height: 1.4em;height: 4.875rem;}
.input-placeholder {display: inline-block;pointer-events: none;position: absolute;text-align: left;z-index: 2;top: 0;left: var(--int-pd);transform: translateY(calc((var(--int-height) - 1.4em) / 2));font-size: var(--font-size);line-height: 1.375em;font-weight: 400;color: var(--clr-text);padding-inline: 0;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-border);}
.input-placeholder span {font-weight: 900;color: var(--clr-secondary);}
.input-error,
.wpcf7-not-valid-tip{font-size: 0.75rem;line-height: 1.375em;font-weight: 400;color: var(--clr-primary);margin-top: 0.25rem;display: none;}
.input-field.focus {z-index: 5;}
.input-field.focus .input-placeholder,
.input-field.value .input-placeholder {opacity: 0;visibility: hidden;}
.input-field:where(.focus) .input {border-color: var(--clr-title);}
.input-field.invalid:not(.value) .input,
.input-field.invalid-email .input {border-color: var(--clr-primary);}
.input-field.invalid:not(.value) .input-error,
.input-field.invalid-email .input-error {display: block;}
.input-field:has(.wpcf7-not-valid) :is(.input,.SumoSelect>.CaptionCont) {border-color: var(--clr-primary);}
.input-field:has(.wpcf7-not-valid) .wpcf7-not-valid-tip {display: block;}
/*======================*/
/*  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-text);-webkit-box-shadow: inset 0 0 0 0.0625rem var(--clr-border),inset 0 0 6.25rem var(--clr-border);-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] {position: relative;display: inline-block;vertical-align: text-top;width: var(--lh-size);height: var(--lh-size);flex-shrink: 0;align-self: baseline;color: var(--clr-text);border-radius: 0.25rem;border: 1px solid currentColor;background-color: var(--clr-border);}
.ch-box input[type=radio]:before,
.ch-box input[type=checkbox]:before {content: "";position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%) scale(0);transition: var(--transition-1);display: block;width: 66.68%;height: 66.68%;border-radius: inherit;background-color: currentColor;}
.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.75rem;--sel-h: 3rem;--sel-fz: 1rem;--sel-items: 5;--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) * 3.5);background: var(--clr-border);border-radius: 1rem;color: var(--clr-title);border: 1px solid var(--clr-border);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 {cursor: pointer;display: inline-block;width: 1.5rem;height: 1.5rem;top: 50%;right: var(--sel-p);bottom: auto;transform: translateY(-50%);transition: var(--transition-1);}
.SumoSelect > .CaptionCont > label i {background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Crect x='24' y='1.04907e-06' width='24' height='24' rx='12' transform='rotate(90 24 1.04907e-06)' fill='%23EF4623'/%3E%3Cpath d='M17.2856 10.771L12.7489 14.7782C12.4141 15.0739 11.8714 15.0739 11.5367 14.7782L6.99993 10.771' stroke='white' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-size: 100% 100%;opacity: 1;width: 100%;height: 100%;top: 50%;left: 50%;right: auto;bottom: auto;transform: translate(-50%, -50%);}
.SumoSelect > .optWrapper {display: block;overflow: auto;z-index: 2;padding: 0;top: 100%;left: 0;width: 100%;border: 1px solid var(--clr-border);border-top: none;border-radius: 1rem;opacity: 0;visibility: hidden;backface-visibility: hidden;background-color: var(--clr-border);box-shadow: none;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;background-color: transparent !important;}
.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-text);transition: var(--transition-1);}
.SumoSelect > .optWrapper > .options li.opt.selected label {color: var(--clr-primary);}
.SumoSelect > .optWrapper > .options > .opt.disabled:first-child,
.SumoSelect > .optWrapper > .options > .opt: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-title);}
.SumoSelect.open > .CaptionCont {border-color: var(--clr-title);}
.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-white);}
}
/*======================*/
/*  Form Block          */
/*======================*/
.form-block {--space: 0.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;}
.form-block .btn {margin-top: 1rem;}