.elementor-1037 .elementor-element.elementor-element-c74305c{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:15px;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-15px;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-labels-inline .elementor-field-group > label{padding-left:5px;}body:not(.rtl) .elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-labels-inline .elementor-field-group > label{padding-right:5px;}body .elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-labels-above .elementor-field-group > label{padding-bottom:5px;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-type-html{padding-bottom:0px;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-button[type="submit"]{color:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-1037 .elementor-element.elementor-element-43d5eb6{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}/* Start custom CSS for form, class: .elementor-element-43d5eb6 *//* --- Form Grid Architecture --- */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-form {
    display: grid !important;
    grid-template-columns: 1fr !important; /* Back to your planned structure */
    gap: 20px !important;
}

/* Force standard fields into distinct side-by-side grids */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group.elementor-field-type-text,
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group.elementor-field-type-email,
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group.elementor-field-type-tel,
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group.elementor-field-type-select {
    grid-column: span 1 !important;
}

/* Force Subject, Message fields, and Submit Button to stretch full-width */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group:nth-child(5),
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group:nth-child(6),
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-form-meta,
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group-submit {
    grid-column: span 2 !important;
}

/* --- Input Fields Base Styling (Strictly Sharp Corners) --- */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-textual {
    background-color: #ffffff !important;
    color: #111111 !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    padding: 16px 20px 16px 50px !important; /* Fixed left padding for clean icon room */
    font-size: 14px !important;
    font-family: 'Lexend', sans-serif !important;
    border-radius: 0px !important; /* Zero curves rule enforced */
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    box-shadow: none !important;
    line-height: 1.4 !important;
    height: auto !important;
}

.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-textual:focus {
    border-color: #3182ed !important;
    box-shadow: 0 0 0 3px rgba(49, 130, 237, 0.1) !important;
    outline: none !important;
}

/* --- Perfect Icon Alignment Positioning --- */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group {
    position: relative !important;
}

/* Base icon structural placement relative to the input container box */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group::before {
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    position: absolute !important;
    left: 20px !important;
    bottom: 16px !important; /* Locks icon alignment relative to input baseline rather than labels */
    color: #3182ed !important; /* Elegant blue icon tone */
    font-size: 16px !important;
    z-index: 5 !important;
    pointer-events: none !important;
    line-height: 1 !important;
}

/* Assign unique icons to consecutive field containers based on arrangement */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group:nth-child(1)::before { content: "\f007"; } /* User Icon for Full Name */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group:nth-child(2)::before { content: "\f0e0"; } /* Envelope Icon for Email */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group:nth-child(3)::before { content: "\f095"; } /* Phone Icon for Telephone */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group:nth-child(4)::before { content: "\f0ac"; } /* Globe Icon for Country Select */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group:nth-child(5)::before { content: "\f15b"; } /* File Icon for Subject */

/* Special positional alignment override for Textarea container */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group:nth-child(6)::before {
    content: "\f304"; /* Pen Icon for Message */
    top: auto !important;
    bottom: calc(100% - 70px) !important; /* Maintains exact top alignment position inside textareas */
}

.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group textarea {
    padding-top: 16px !important;
    min-height: 140px !important;
}

/* --- Dropdown Select Clean Adjustments --- */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-type-select select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%233182ed' stroke-width='3' stroke-linecap='square' stroke-linejoin='miter'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 20px center !important;
}

/* --- Submit Button Layout --- */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-button {
    width: 100% !important;
    background: linear-gradient(90deg, #3182ed 0%, #5ba4ff 100%) !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    font-family: 'Lexend', sans-serif !important;
    padding: 18px 30px !important;
    border-radius: 0px !important; /* Zero curves rule enforced */
    border: none !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 12px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-button:hover {
    background: linear-gradient(90deg, #1d69cc 0%, #3182ed 100%) !important;
    box-shadow: 0 10px 25px rgba(49, 130, 237, 0.25) !important;
}

/* Inject paper airplane icon on button text right end via CSS pseudo element */
.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-button::after {
    content: "\f1d8" !important;
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    font-size: 16px !important;
    transition: transform 0.3s ease !important;
}

.elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-button:hover::after {
    transform: translate(4px, -2px) scale(1.05);
}

/* --- Responsive Stack Configuration --- */
@media (max-width: 767px) {
    .elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-form {
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }
    .elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group,
    .elementor-1037 .elementor-element.elementor-element-43d5eb6 .elementor-field-group-submit {
        grid-column: span 1 !important;
    }
}/* End custom CSS */