.enquiry-captcha {
    display: grid;
    gap: 8px;
    margin: 12px 0 16px;
    min-width: 0;
}

.enquiry-captcha .enquiry-captcha-label {
    display: block;
    margin: 0;
    color: #122438;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.4;
}

.enquiry-captcha-label span {
    color: #b01217;
}

.enquiry-captcha-image-row {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.enquiry-captcha-image {
    display: block;
    width: min(200px, 65%);
    height: auto;
    aspect-ratio: 10 / 3;
    border: 1px solid #d5e6df;
    border-radius: 8px;
}

.enquiry-captcha .enquiry-captcha-refresh {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 9px 7px;
    border: 1px solid #cbded4;
    border-radius: 8px;
    background: #f3faf5;
    color: #13683a;
    font: inherit;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.3;
    cursor: pointer;
}

.enquiry-captcha-refresh:hover {
    background: #e6f3ea;
}

.enquiry-captcha-refresh:focus-visible {
    outline: 2px solid #13683a;
    outline-offset: 3px;
}

.enquiry-captcha-refresh:disabled {
    opacity: 0.65;
    cursor: wait;
}

.enquiry-captcha .enquiry-captcha-answer {
    box-sizing: border-box;
    width: 100%;
    min-height: 42px;
    margin: 0;
    padding: 10px 12px;
    border: 1px solid #cedbd4;
    border-radius: 9px;
    background: #fff;
    color: #122438;
    font: inherit;
    font-size: 13px;
    line-height: 1.4;
}

.enquiry-captcha .enquiry-captcha-help,
.enquiry-captcha .enquiry-captcha-error {
    display: block;
    margin: 0;
    color: #52665d;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.5;
}

.enquiry-captcha .enquiry-captcha-error,
.enquiry-captcha-help.is-error {
    color: #b01217;
}
