.wpcf7-form{
    display: flex;
    gap:20px;
    flex-wrap:wrap;
    width:var(--cf7-width,100%);
    color:#fff;
}
.wpcf7 .screen-reader-response{
    display: none !important;
}
.wpcf7-form [class*="form-row"]{
    position: relative;
    width:100%;
}
.wpcf7-form-control-wrap{
    display: flex;
    position: relative;
    width:100%;
}
.wpcf7-form .form-row-checkbox{
    align-items:center;
    height:auto;
}
.wpcf7-form .form-row-checkbox label{
    display:flex;
    gap:10px;
}
.wpcf7-form .form-row-checkbox label .wpcf7-form-control-wrap{
    display: inline-flex;
    width:10px;
}
.wpcf7-form .form-row-checkbox label > span:not([class]){
    width:calc(100% - 20px);
}

.wpcf7-form-control-wrap :is(input,textarea,select):not([type="checkbox"], [type="radio"]){
    background: #fff;
    border:1px solid #fff;
    border-radius: 5px;
    box-sizing: border-box;
    color:var(--tu-neutral-1);
    display: block;
    min-height:48px;
    padding:12px 16px;
    width:100%;
    outline:none !important;
}
.wpcf7-form-control-wrap :is(input,textarea,select).wpcf7-not-valid{
    border-color: var(--tu-primary-3,#D4007D);
}
.wpcf7-form-control-wrap .wpcf7-not-valid-tip{
    position: absolute;
    left:0;
    bottom:0;
    font-size:.875em;
    display: inline-flex;
    border-radius:5px;
    background-color:#fff;
    filter:drop-shadow(5px 5px 10px rgba(0,0,0,.12));
    color: var(--tu-primary-3,#D4007D);
    padding:6px 18px;
    transform:translateY(calc(100% + 8px));
    pointer-events:none;
    opacity:0;
    transition:all .2s;
    z-index:2;
}
.wpcf7-form-control-wrap .wpcf7-not-valid-tip::before{
    background-color:#fff;
    content:'';
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
    display: block;
    height:8px;
    width:12px;
    position: absolute;
    left:10px;
    top:-7px;
}

.wpcf7-form-control-wrap:focus-within .wpcf7-not-valid-tip{
    opacity:1;
}

.wpcf7-form .form-row-submit input[type=submit]{
    background-color:var(--tu-primary-3, #D4007D);
    border-color:var(--tu-primary-3, #D4007D);
    color:var(--tu-neutral-2, #fff);
    justify-content:center;
    cursor:pointer;
    border-radius: 5px;
    box-sizing: border-box;
    display: block;
    min-height:48px;
    padding:12px 16px;
    width:100%;
    outline:none !important;
    transition: all .3s;
}
.wpcf7-form .form-row-submit input[type=submit]:disabled{
    background-color:var(--tu-grey-2, #7A7F94);
    border-color:var(--tu-grey-2, #7A7F94);
    cursor:not-allowed;
}