/*
Theme Name: GnXi Theme
Text Domain: gnxi
*/

.cta-section.bg-grey {
    background-color: var(--tertiary-color);
}

.gnxi-home-banner-main-title {
    font-family: var(--font-family-sans);
    font-size: var(--font-hd-1);
    font-weight: 700;
    color: var(--light-color);
    line-height: 1.15;
    letter-spacing: -0.01em;
    margin-bottom: 20px !important;
    margin-block-end: 20px !important;
}

/* ==========================================================================
   Contact Form 7 Base Setup & Validation
   ========================================================================== */


.message-group .wpcf7-form-control-wrap {
    display: block;
    margin: 0;
    padding: 0;
    line-height: normal; 
}

.wpcf7 form .wpcf7-not-valid-tip:not(:first-of-type) {
    display: none;
}

.wpcf7 form .wpcf7-not-valid-tip {
    display: block;
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.4;
}


.select-wrap .wpcf7-not-valid-tip {
    position: static;
    display: block;
    width: 100%;
    margin-top: 6px;
}


.select-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
}

.select-wrap .wpcf7-form-control-wrap {
    width: 100%;
    order: 1;
}

.select-wrap .select-arrow {
    order: 2;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}

.select-wrap .wpcf7-not-valid-tip {
    order: 3;
    width: 100%;
}

/* ==========================================================================
   Textarea Precise Sizing & Spacing (Fixed Size Explosion)
   ========================================================================== */

.form-group .wpcf7-form-control-wrap textarea,
.form-group textarea {
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 24px 32px !important; 
    height: 140px !important; 
    resize: vertical;
    text-align: left !important;
    line-height: 1.5 !important;
    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    color: #001f61 !important;
}


@media (min-width: 768px) {
    .form-group .wpcf7-form-control-wrap textarea,
    .form-group textarea {
        font-size: 16px !important;
        padding: 24px 32px !important; 
        height: 160px !important; 
    }
}


.wpcf7 form:not(.invalid) .wpcf7-not-valid-tip {
    display: none !important;
}

.wpcf7 form:not(.invalid) .wpcf7-not-valid {
    border-color: inherit !important;
}