.elementor-1254 .elementor-element.elementor-element-4621e63{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:106px;--padding-bottom:106px;--padding-left:0px;--padding-right:0px;}.elementor-1254 .elementor-element.elementor-element-acdd7d0{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1254 .elementor-element.elementor-element-a892108{text-align:center;}.elementor-1254 .elementor-element.elementor-element-a892108 .elementor-heading-title{font-family:"Fira Sans", Sans-serif;font-size:1.4rem;font-weight:600;text-transform:uppercase;color:#5B5B4B;}.elementor-1254 .elementor-element.elementor-element-9305bb2{text-align:center;}.elementor-1254 .elementor-element.elementor-element-9305bb2 .elementor-heading-title{font-family:"Fira Sans", Sans-serif;font-size:2.7rem;font-weight:600;text-transform:uppercase;line-height:1.2em;color:#000000;}@media(max-width:767px){.elementor-1254 .elementor-element.elementor-element-4621e63{--margin-top:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:25px;--padding-right:25px;}.elementor-1254 .elementor-element.elementor-element-a892108 .elementor-heading-title{font-size:1rem;}.elementor-1254 .elementor-element.elementor-element-9305bb2 .elementor-heading-title{font-size:2rem;}}@media(min-width:768px){.elementor-1254 .elementor-element.elementor-element-4621e63{--content-width:85%;}}/* Start custom CSS for shortcode, class: .elementor-element-c7d653b *//* Master Form Container */
.elementor-1254 .elementor-element.elementor-element-c7d653b .contact-form-container {
    width: 100%;
    max-width: 700px; 
    margin: 0 auto;
    font-family: sans-serif;
}

/* ALL FIELDS (Unified Light Grey Style) */
.elementor-1254 .elementor-element.elementor-element-c7d653b .contact-form-container input.wpcf7-form-control:not([type="submit"]):not([type="checkbox"]),
.elementor-1254 .elementor-element.elementor-element-c7d653b .contact-form-container select.wpcf7-form-control,
.elementor-1254 .elementor-element.elementor-element-c7d653b .contact-form-container textarea.wpcf7-form-control {
    width: 100% !important;
    background-color: #eef0f2 !important; 
    color: #333333 !important; 
    border: 1px solid #d1d5db !important; 
    border-radius: 6px !important;
    padding: 14px 15px !important;
    box-sizing: border-box !important;
    font-size: 16px !important;
    box-shadow: none !important;
    max-width: 100% !important;
    margin-bottom: 15px !important; 
}

/* Field Placeholder Text */
.elementor-1254 .elementor-element.elementor-element-c7d653b .contact-form-container input::placeholder,
.elementor-1254 .elementor-element.elementor-element-c7d653b .contact-form-container textarea::placeholder {
    color: #7a8090 !important;
}

/* Message Box Height Constraint */
.elementor-1254 .elementor-element.elementor-element-c7d653b .contact-form-container textarea.wpcf7-form-control {
    height: 120px !important;
    min-height: 120px !important;
    max-height: 250px !important;
}

/* Dropdown Arrow Customization */
.elementor-1254 .elementor-element.elementor-element-c7d653b .contact-form-container select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24"><path fill="%23000" d="M7 10l5 5 5-5z"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-position: right 15px center !important;
}

/* --- THE BULLETPROOF GRID FIX --- */
.elementor-1254 .elementor-element.elementor-element-c7d653b .grid-row {
    display: flex !important;
    flex-direction: row !important;
    gap: 15px !important;
    width: 100% !important;
    margin-bottom: 15px !important;
    align-items: flex-start !important;
}

/* Forces side-by-side even if CF7 injects invisible <p> tags */
.elementor-1254 .elementor-element.elementor-element-c7d653b .grid-row > p,
.elementor-1254 .elementor-element.elementor-element-c7d653b .grid-row > span,
.elementor-1254 .elementor-element.elementor-element-c7d653b .grid-row .wpcf7-form-control-wrap { 
    flex: 1 !important;
    width: 100% !important;
    margin-bottom: 0 !important;
    display: block !important;
}

/* Removes duplicate bottom margin inside the grid so spacing is perfect */
.elementor-1254 .elementor-element.elementor-element-c7d653b .grid-row input.wpcf7-form-control,
.elementor-1254 .elementor-element.elementor-element-c7d653b .grid-row select.wpcf7-form-control {
    margin-bottom: 0 !important; 
}

/* CHECKBOX STYLING */
.elementor-1254 .elementor-element.elementor-element-c7d653b .acceptance-wrapper {
    color: #7a8090 !important;
    font-size: 14px !important;
    margin-top: 5px !important;
    margin-bottom: 20px !important;
}

/* SOLID NAVY SUBMIT BUTTON */
.elementor-1254 .elementor-element.elementor-element-c7d653b input[type="submit"].wpcf7-submit {
    background-color: #051c39 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 15px 30px !important;
    border-radius: 8px !important;
    width: 100% !important;
    font-weight: bold !important;
    font-size: 18px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.elementor-1254 .elementor-element.elementor-element-c7d653b input[type="submit"].wpcf7-submit:hover {
    background-color: #0a3060 !important;
}

/* RED ERROR MESSAGES */
.elementor-1254 .elementor-element.elementor-element-c7d653b .wpcf7-not-valid-tip {
    font-size: 12px !important;
    margin-top: -10px !important;
    margin-bottom: 10px !important;
    color: #dc3232 !important;
    display: block !important;
}

/* MOBILE RESPONSIVENESS */
@media (max-width: 768px) {
    .elementor-1254 .elementor-element.elementor-element-c7d653b .grid-row {
        flex-direction: column !important; 
        gap: 15px !important;
    }
}/* End custom CSS */