.fullwidth-wrapper--through-consultation-form,
.through-consultation-form {
    --through-consultation-bg-image: url('/wp-content/uploads/2026/04/8661-1-2-1.png');
    --through-consultation-bg-color: #F9FCFF;
}

.fullwidth-wrapper--through-consultation-form {
    background-color: var(--through-consultation-bg-color);
}

.through-consultation-form {
    --through-consultation-spacing-y: 40px;
    --through-consultation-content-gap: clamp(16px, 2vw, 24px);
    --through-consultation-form-column-gap: clamp(16px, 1.5vw, 24px);
    --through-consultation-form-row-gap: clamp(10px, 1vw, 14px);
    --through-consultation-form-shell-max-width: 976px;
    --through-consultation-card-padding-x: clamp(20px, 2.5vw, 32px);
    --through-consultation-card-border-color: #B8D9F6;
    --through-consultation-card-radius: 16px;
    --through-consultation-card-bg-color: #FFFFFF;
    --through-consultation-card-shadow: 0px 0px 32px 0px #F3F9FF;
    --through-consultation-title-size: clamp(40px, 4vw, 48px);
    --through-consultation-desc-size: clamp(14px, 1.5vw, 18px);
    --through-consultation-submit-width: clamp(220px, 18vw, 280px);
    --through-consultation-field-height: 56px;
    --through-consultation-success-icon-size: clamp(72px, 7vw, 96px);
    box-sizing: border-box;
    width: 100%;
    padding: var(--through-consultation-spacing-y) var(--through-consultation-card-padding-x);
    border: 1px solid var(--through-consultation-card-border-color);
    border-radius: var(--through-consultation-card-radius);
    background-color: var(--through-consultation-card-bg-color);
    background-image: var(--through-consultation-bg-image);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    box-shadow: var(--through-consultation-card-shadow);
}

.through-consultation-form__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--through-consultation-content-gap);
    width: 100%;
    text-align: center;
}

.through-consultation-form__title {
    margin: 0;
    font-family: 'Cormorant Infant';
    font-size: var(--through-consultation-title-size);
    font-weight: 600;
    line-height: 1.22;
    text-transform: uppercase;
    background: linear-gradient(180deg, #1280E1 43.41%, #0A467B 78.26%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.through-consultation-form__description {
    max-width: var(--through-consultation-desc-max-width);
    margin: 0;
    color: #4D4D5B;
    font-size: var(--through-consultation-desc-size);
    line-height: 1.48;
}

.through-consultation-form__form-shell,
.through-consultation-form__form-shell .wpcf7,
.through-consultation-form__form-shell .wpcf7 form {
    width: 100%;
}

.through-consultation-form__form-shell {
    --through-consultation-field-width: calc((100% - var(--through-consultation-submit-width) - (var(--through-consultation-form-column-gap) * 2)) / 2);
    width: 100%;
    max-width: var(--through-consultation-form-shell-max-width);
    margin: clamp(8px, 1vw, 12px) auto 0;
}

.through-consultation-form__form-shell .wpcf7-form {
    display: grid;
    grid-template-columns: minmax(0, var(--through-consultation-field-width)) minmax(0, var(--through-consultation-field-width)) minmax(0, var(--through-consultation-submit-width));
    align-items: start;
    column-gap: var(--through-consultation-form-column-gap);
    row-gap: var(--through-consultation-form-row-gap);
}

.through-consultation-form__form-shell .wpcf7-form > p,
.through-consultation-form__form-shell .wpcf7-response-output {
    margin: 0;
}

.through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(1) {
    grid-column: 1;
    grid-row: 1;
}

.through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(2) {
    grid-column: 2;
    grid-row: 1;
}

.through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(3) {
    grid-column: 1 / -1;
    grid-row: 2;
    width: 100%;
    justify-self: stretch;
    text-align: left;
}

.through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(4) {
    display: flex;
    grid-column: 3;
    grid-row: 1;
}

.through-consultation-form__form-shell .wpcf7-response-output {
    grid-column: 1 / -1;
    grid-row: 3;
}

.through-consultation-form__form-shell .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
}

.through-consultation-form__form-shell .wpcf7-form input:not([type="checkbox"]):not([type="submit"]) {
    width: 100%;
    height: var(--through-consultation-field-height);
    padding: 0 24px;
    box-sizing: border-box;
}

.through-consultation-form__form-shell .wpcf7-form input[type="submit"] {
    width: 100%;
    min-width: var(--through-consultation-submit-width);
    height: 56px;
    padding: 12px 32px;
    border: 1px solid #1280E1;
    border-radius: 40px;
    background-color: #1280E1;
    color: #FFFFFF;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.76;
    letter-spacing: .04em;
}

.through-consultation-form__form-shell .wpcf7-form input[type="submit"]:not(:disabled):hover,
.through-consultation-form__form-shell .wpcf7-form input[type="submit"]:not(:disabled):focus,
.through-consultation-form__form-shell .wpcf7-form input[type="submit"]:not(:disabled):active {
    border-color: #003494;
    background-color: #003494;
    color: #FFFFFF;
}

.through-consultation-form__form-shell .wpcf7-form input[type="submit"]:disabled {
    color: rgba(255, 255, 255, .55);
}

.through-consultation-form__form-shell .wpcf7-acceptance label {
    align-items: flex-start;
}

.through-consultation-form__form-shell .wpcf7-list-item-label {
    color: #4D4D5B;
    font-size: 16px;
    line-height: 1.48;
    text-align: left;
}

.through-consultation-form__form-shell .wpcf7-list-item-label a {
    color: #1280E1;
    text-decoration: none;
}

.through-consultation-form__form-shell .wpcf7-form-control.wpcf7-not-valid {
    border-color: #D84D4D;
    box-shadow: 0 0 0 1px #D84D4D;
}

.through-consultation-form__form-shell .wpcf7-not-valid-tip {
    padding-top: 8px;
    color: #D84D4D;
    font-size: 14px;
    line-height: 1.4;
    text-align: left;
}

.through-consultation-form__form-shell .wpcf7 form.invalid .wpcf7-response-output,
.through-consultation-form__form-shell .wpcf7 form.unaccepted .wpcf7-response-output {
    padding: 0;
    border: 0;
    color: #D84D4D;
    font-size: 14px;
    line-height: 1.4;
    text-align: left;
}

.through-consultation-form__success {
    display: none;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding-top: clamp(12px, 1.5vw, 24px);
}

.through-consultation-form__success-icon {
    width: var(--through-consultation-success-icon-size);
    height: var(--through-consultation-success-icon-size);
}

.through-consultation-form.is-success .through-consultation-form__success {
    display: flex;
}

@media (max-width: 991px) {
    .through-consultation-form__form-shell .wpcf7-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(1) {
        grid-column: 1;
        grid-row: 1;
    }

    .through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(2) {
        grid-column: 2;
        grid-row: 1;
    }

    .through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(3) {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(4) {
        grid-column: 1 / -1;
        grid-row: 3;
    }

    .through-consultation-form__form-shell .wpcf7-response-output {
        grid-row: 4;
    }
}

@media (max-width: 640px) {
    .through-consultation-form__form-shell .wpcf7-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(1) {
        grid-column: 1;
        grid-row: 1;
    }

    .through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(2) {
        grid-column: 1;
        grid-row: 2;
    }

    .through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(3) {
        grid-column: 1;
        grid-row: 4;
    }

    .through-consultation-form__form-shell .wpcf7-form > p:nth-of-type(4) {
        grid-column: 1;
        grid-row: 3;
    }

    .through-consultation-form__form-shell .wpcf7-response-output {
        grid-row: 5;
    }

    .through-consultation-form__form-shell .wpcf7-form input[type="submit"] {
        min-width: 0;
    }
}
