.twl-form { max-width: 680px; }
.twl-field { margin-bottom: 16px; }
.twl-field label { display: block; }
.twl-required { color: #b42318; }
.twl-form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not(.iti__tel-input):not(.iti__search-input), .twl-form select {
    box-sizing: border-box; display: block; width: 100%; margin-top: 6px;
    padding: 10px 12px; border: 1px solid #c9c9c9; border-radius: 4px;
}
.twl-form .iti { display: block; width: 100%; margin-top: 6px; }
.twl-form .iti input.iti__tel-input {
    width: 100%; padding-top: 10px; padding-bottom: 10px;
    border: 1px solid #c9c9c9; border-radius: 4px;
}
.twl-form .iti button {
    background: transparent !important; color: inherit !important;
    border: 0 !important; border-radius: 0 !important;
    box-shadow: none !important; min-width: 0 !important;
}
.twl-form .iti__selected-country {
    width: auto !important; height: 100% !important; padding: 0 !important;
    border-right: 1px solid #d7dbe0 !important;
}
.twl-form .iti__selected-country-primary {
    height: 100%; padding: 0 12px !important; background: transparent !important;
}
.twl-form .iti__selected-country:hover,
.twl-form .iti__selected-country[aria-expanded="true"] {
    background: #f5f7f9 !important;
}
.twl-form .iti__selected-dial-code {
    margin-left: 7px; color: #273444; font-weight: 600;
}
.twl-form .iti__arrow { border-color: #697586; }
.twl-form .iti__flag {
    background-image: image-set(
        url("vendor/intl-tel-input/img/flags.webp") 1x,
        url("vendor/intl-tel-input/img/flags@2x.webp") 2x
    ) !important;
}
.twl-form .iti__country-selector {
    border-radius: 6px; box-shadow: 0 8px 24px rgba(16, 24, 40, .16);
}
:root {
    --iti-path-flags-1x: url("vendor/intl-tel-input/img/flags.webp");
    --iti-path-flags-2x: url("vendor/intl-tel-input/img/flags@2x.webp");
}
.twl-phone-error { color: #b42318; margin-top: 6px; font-size: .9em; }
.twl-field-label { display: block; }
.twl-radio-group { display: flex; gap: 24px; margin-top: 10px; color: inherit !important; }
.twl-radio-group label { display: flex; align-items: center; gap: 7px; font-weight: normal; }
.twl-date-wrap { display: block; position: relative; cursor: pointer; }
.twl-date-display { padding-right: 46px !important; cursor: text; }
.twl-date-wrap::after {
    content: ""; position: absolute; right: 17px; top: 50%; width: 18px; height: 18px;
    transform: translateY(-50%); pointer-events: none;
    background: no-repeat center/18px 18px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23232b32' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='17' rx='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E");
}
.twl-date-picker {
    position: absolute !important; right: 16px; bottom: 0; width: 1px !important;
    height: 1px; padding: 0 !important; margin: 0 !important; opacity: 0;
    pointer-events: none;
}
.twl-consent label { display: flex; align-items: flex-start; gap: 8px; }
.twl-consent input { margin-top: 4px; }
.twl-consent-text { flex: 1; }
.twl-consent-text a {
    text-decoration: underline !important;
    text-underline-offset: 2px;
    cursor: pointer;
}
.twl-form > button[type="submit"] { padding: 10px 22px; cursor: pointer; }
.twl-form > button[type="submit"]:disabled { cursor: wait; opacity: .65; }
.twl-result { margin-top: 12px; }
.twl-success { color: #067647; }
.twl-error { color: #b42318; }
.twl-honeypot { position: absolute !important; left: -9999px !important; }
.twl-recaptcha { margin: 0 0 16px; overflow: hidden; }
.twl-form.twl-submitted > :not(.twl-result) { display: none; }
.twl-form.twl-submitted button,
.twl-form button[hidden] { display: none !important; }
