.cf7-phone-wrapper {
    display: flex;
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 20px;
}
.iti.iti--allow-dropdown.iti--separate-dial-code{
    margin-bottom: 20px;
}
.cf7-phone-wrapper select {
    padding-right: 5px !important;
}
.cf7-country-code {
    background: #f5f5f5;
    border: none;
    padding: 10px;
}

.cf7-phone-input {
    flex: 1;
    border: none;
    padding: 10px;
}

.cf7-phone-wrapper:focus-within {
    border-color: #007cba;
}

/* Fix width issues and ensure flags align */
.iti { width: 100%; display: block; }
.cf7-phone-input {
    padding-left: 92px !important; /* Space for the flag */
}
.wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: 0.9em;
    display: block;
    margin-top: 5px;
}

.iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag {
    background-color: transparent !important;
}
.iti--separate-dial-code .iti__selected-flag {
 background-color: transparent !important;
}
span.wpcf7-form-control-wrap[data-name="enhanced_recaptcha"] .wpcf7-not-valid-tip {
    display: block;
    margin-top: 5px;
    font-size: 0.9em;
    color: #dc3232;
}