.elementor-5124 .elementor-element.elementor-element-50af2cc{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:50px 50px;--row-gap:50px;--column-gap:50px;--overlay-opacity:0.5;--padding-top:3rem;--padding-bottom:3rem;--padding-left:0rem;--padding-right:0rem;}.elementor-5124 .elementor-element.elementor-element-50af2cc:not(.elementor-motion-effects-element-type-background), .elementor-5124 .elementor-element.elementor-element-50af2cc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-5124 .elementor-element.elementor-element-50af2cc::before, .elementor-5124 .elementor-element.elementor-element-50af2cc > .elementor-background-video-container::before, .elementor-5124 .elementor-element.elementor-element-50af2cc > .e-con-inner > .elementor-background-video-container::before, .elementor-5124 .elementor-element.elementor-element-50af2cc > .elementor-background-slideshow::before, .elementor-5124 .elementor-element.elementor-element-50af2cc > .e-con-inner > .elementor-background-slideshow::before, .elementor-5124 .elementor-element.elementor-element-50af2cc > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-5124 .elementor-element.elementor-element-c469395{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-5124 .elementor-element.elementor-element-bdd8b46{--display:flex;--justify-content:flex-start;--align-items:stretch;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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-5124 .elementor-element.elementor-element-b96a509{text-align:left;}.elementor-5124 .elementor-element.elementor-element-b96a509 .elementor-heading-title{color:#6F6B7D;}.elementor-5124 .elementor-element.elementor-element-7c2adaf{text-align:left;}.elementor-5124 .elementor-element.elementor-element-7c2adaf .elementor-heading-title{font-family:"Public Sans", Sans-serif;font-weight:600;letter-spacing:1px;color:#6F6B7D;}.elementor-5124 .elementor-element.elementor-element-1af727b{--display:flex;}.elementor-widget-image .widget-image-caption{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-5124 .elementor-element.elementor-element-73a6fa5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:20px 20px 20px 20px;}.elementor-5124 .elementor-element.elementor-element-aedfe37{--display:flex;--border-radius:20px 20px 20px 20px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-5124 .elementor-element.elementor-element-13e504d{width:100%;max-width:100%;}.elementor-5124 .elementor-element.elementor-element-13e504d > .elementor-widget-container{margin:12px 12px 0px 0px;border-style:solid;border-width:0px 0px 1px 0px;border-color:#6F6B7D;}.elementor-5124 .elementor-element.elementor-element-13e504d .elementor-heading-title{font-family:"Public Sans", Sans-serif;font-weight:600;color:#6F6B7D;}.elementor-5124 .elementor-element.elementor-element-9be1e1e{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5124 .elementor-element.elementor-element-e480172 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-5124 .elementor-element.elementor-element-e480172 input , .elementor-5124 .elementor-element.elementor-element-e480172 select , .elementor-5124 .elementor-element.elementor-element-e480172 textarea  {border-style:none!important;}.elementor-5124 .elementor-element.elementor-element-e480172 input[type="submit"] {min-width:140px!important;width:unset!important;margin:auto!important;}@media(min-width:768px){.elementor-5124 .elementor-element.elementor-element-73a6fa5{--width:100%;}}/* Start custom CSS for monst-contact-form-v1, class: .elementor-element-e480172 *//* ----------------------------
   CF7 Input Fields Styling
----------------------------- */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 input[type="number"],
.wpcf7 select {
    height: 40px !important;        /* All input height */
    padding: 8px 12px !important;
    font-size: 15px;
    line-height: normal;
    box-sizing: border-box;
    width: 100%;                    /* Full width fields */
}

/* ----------------------------
   CF7 Message Box (if used)
----------------------------- */
.wpcf7 textarea {
    height: 60px !important;        /* Compact textarea */
    padding: 8px 12px !important;
    font-size: 15px;
    box-sizing: border-box;
    width: 100%;
}

/* ----------------------------
   CF7 File Upload Field
----------------------------- */
.wpcf7 input[type="file"] {
    margin-bottom: 10px !important; /* Space below upload */
    padding: 5px 0 !important;
    font-size: 14px;
    width: 100%;
}

/* ----------------------------
   CF7 Submit Button
----------------------------- */
.wpcf7 input.wpcf7-submit {
    background-color: #118383 !important;
    color: #ffffff !important;
    border: none;
    padding: 12px 30px !important;
    font-size: 16px;
    border-radius: 5px;
    cursor: pointer;
    transition: background 0.3s ease;
    width: auto;
    display: inline-block;
    text-align: center;
    line-height: 1.5;
    vertical-align: middle;
}

/* Hover effect */
.wpcf7 input.wpcf7-submit:hover {
    background-color: #0f6f6f !important;
}

/* ----------------------------
   Layout / Spacing Adjustments
----------------------------- */
.wpcf7-form p {
    margin-bottom: 10px !important; /* Equal gap between fields */
}

/* Center align button & reduce top spacing */
.wpcf7 .wpcf7-submit-wrapper {
    text-align: center;
    margin-top: 5px !important;
}

/* ----------------------------
   Responsive Adjustments (for mobile)
----------------------------- */
@media (max-width: 767px) {
  .wpcf7 input[type="text"],
  .wpcf7 input[type="email"],
  .wpcf7 input[type="tel"],
  .wpcf7 input[type="url"],
  .wpcf7 input[type="number"],
  .wpcf7 textarea,
  .wpcf7 select {
      height: 36px !important;   /* Slightly smaller on mobile */
      font-size: 14px;
  }
  .wpcf7 input.wpcf7-submit {
      padding: 10px 25px !important;
      font-size: 15px;
  }
}
/* CF7 Radio Button Custom Color */
.wpcf7 input[type="radio"] {
    accent-color: #118383; /* Modern browsers support this */
}

/* Optional: Make radio label text match color */
.wpcf7 input[type="radio"] + label {
    color: #118383;
}
/* Make all CF7 form labels #6F6B7D */
.wpcf7 label {
    color: #6F6B7D !important;
}
/* Only Preferred Service dropdown */
.wpcf7 select.preferred-service {
    color: #118383 !important;
}
/* Success message */
.wpcf7-response-output.wpcf7-mail-sent-ok {
    background-color: #118383; /* Custom background color */
    color: #ffffff;             /* White text */
    padding: 12px 20px;
    border-radius: 6px;
    font-weight: bold;
    font-size: 15px;
}

/* Error message */
.wpcf7-response-output.wpcf7-validation-errors {
    background-color: #118383!important; /* Custom background color */
    color: #ffffff!important;             /* White text */
    padding: 12px 20px;
    border-radius: 6px;
    font-weight: bold;
    font-size: 15px;
}

/* Smooth transition */
.wpcf7-response-output {
    transition: all 0.3s ease;
}

/* ✅ CF7 After Submission Message Styling */

/* Success message (form successfully sent) */
.wpcf7 form.sent .wpcf7-response-output {
  background-color: #118383 !important; /* Green background */
  color: #fff !important;               /* White text */
  border: none !important;
  padding: 12px 20px !important;
  border-radius: 6px !important;
  text-align: center !important;
}

/* Validation error (when required fields missing) */
.wpcf7 form.invalid .wpcf7-response-output {
  background-color: #ffd6d6 !important; /* Light red background */
  color: #900 !important;               /* Dark red text */
  border: none !important;
  padding: 12px 20px !important;
  border-radius: 6px !important;
  text-align: center !important;
}

/* Submission failed (server or mail error) */
.wpcf7 form.failed .wpcf7-response-output {
  background-color: #ffe6b3 !important; /* Light orange background */
  color: #000 !important;
  border: none !important;
  padding: 12px 20px !important;
  border-radius: 6px !important;
  text-align: center !important;
}
/* Move CF7 submission message below the submit button */
.wpcf7 .wpcf7-response-output {
    order: 1;     
    position: relative !important;
    /* Place it after inputs */
    margin-top: 48px;        /* Space from submit button */
    display: block;          /* Ensure it's visible */
               /* Full width */
}
.wpcf7 form {
    display: flex;
    flex-direction: column;  /* Stack inputs, button, and message vertically */
}
/* Reduce space between label and input/textarea */
.wpcf7 label {
  display: block;
  margin-bottom: 4px !important; /* adjust to your liking (2–6px) */
  color: #6F6B7D !important;     /* keep your existing color */
  font-weight: 500;
}

/* Optional: tighten the layout between fields slightly */
.wpcf7-form p {
  margin-bottom: 10px !important; /* you can try 8–12px for better balance */
}
/* Make all CF7 placeholders normal weight and subtle color */
.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder {
    font-weight: 400 !important;   /* normal weight */
    color: #999 !important;        /* optional: softer gray */
    opacity: 1;                    /* ensures consistent color across browsers */
}
/* Make all CF7 inputs, textarea, and selects normal font */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 input[type="number"],
.wpcf7 textarea,
.wpcf7 select {
    font-weight: 400 !important;  /* normal text */
    font-size: 15px !important;   /* uniform size */
    color: #54595F !important;    /* your chosen text color */
}


/* Hide CF7 default loader */
.wpcf7 .wpcf7-spinner {
    display: none !important;
}

/* Custom simple spinner */
.cf7-simple-loader {
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255,255,255,0.4);
    border-top-color: #118383;
    border-radius: 50%;
    animation: cf7-spin 0.8s linear infinite;
    margin-left: 8px;
    display: inline-block;
}

@keyframes cf7-spin {
    to { transform: rotate(360deg); }
}

/* Submit button flex center */
.wpcf7 input.wpcf7-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
/* Completely kill any animation inside CF7 */
.wpcf7 * {
    animation: none !important;
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
}/* End custom CSS */