.elementor-4584 .elementor-element.elementor-element-2eaf695{--display:flex;--overlay-opacity:0.5;}.elementor-4584 .elementor-element.elementor-element-2eaf695::before, .elementor-4584 .elementor-element.elementor-element-2eaf695 > .elementor-background-video-container::before, .elementor-4584 .elementor-element.elementor-element-2eaf695 > .e-con-inner > .elementor-background-video-container::before, .elementor-4584 .elementor-element.elementor-element-2eaf695 > .elementor-background-slideshow::before, .elementor-4584 .elementor-element.elementor-element-2eaf695 > .e-con-inner > .elementor-background-slideshow::before, .elementor-4584 .elementor-element.elementor-element-2eaf695 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #FFFFFF 0%, #EBEBEB 100%);}.elementor-4584 .elementor-element.elementor-element-d0c96f1{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--background-transition:0.3s;--overlay-opacity:0.5;box-shadow:0px 0px 80px 0px rgba(29.999999999999996, 22, 22, 0.04);--margin-top:-80px;--margin-bottom:120px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:100px;--padding-right:100px;--z-index:1;}.elementor-4584 .elementor-element.elementor-element-d0c96f1:hover{background-color:transparent;background-image:linear-gradient(180deg, #FFFFFF 0%, #FFFFFF 100%);border-style:groove;}.elementor-4584 .elementor-element.elementor-element-d0c96f1::before, .elementor-4584 .elementor-element.elementor-element-d0c96f1 > .elementor-background-video-container::before, .elementor-4584 .elementor-element.elementor-element-d0c96f1 > .e-con-inner > .elementor-background-video-container::before, .elementor-4584 .elementor-element.elementor-element-d0c96f1 > .elementor-background-slideshow::before, .elementor-4584 .elementor-element.elementor-element-d0c96f1 > .e-con-inner > .elementor-background-slideshow::before, .elementor-4584 .elementor-element.elementor-element-d0c96f1 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #FFFFFF 0%, #DFDFDF 100%);}.elementor-4584 .elementor-element.elementor-element-d0c96f1, .elementor-4584 .elementor-element.elementor-element-d0c96f1::before{--border-transition:0.3s;}.elementor-4584 .elementor-element.elementor-element-d0c96f1.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-4584 .elementor-element.elementor-element-2f58014{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-4584 .elementor-element.elementor-element-2f58014.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-4584 .elementor-element.elementor-element-2f58014 .align-box{text-align:left;}.elementor-4584 .elementor-element.elementor-element-2f58014 .tp-el-title{background:transparent;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:#000000;background-color:transparent;background-image:linear-gradient(180deg, #000000 0%, #070203 100%);font-family:"Plus Jakarta Sans", Sans-serif;font-size:36px;font-weight:700;line-height:1.2em;padding:0px 0px 0px 0200px;margin:00px 0px 0px 300px;}.elementor-4584 .elementor-element.elementor-element-c4bacae{--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:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:-100px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4584 .elementor-element.elementor-element-fbf8740{--display:flex;}.elementor-4584 .elementor-element.elementor-element-fc2e3d5{--display:flex;}.elementor-4584 .elementor-element.elementor-element-e130611{--display:flex;}.elementor-4584 .elementor-element.elementor-element-c1b54ee{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4584 .elementor-element.elementor-element-6c763f1 iframe{height:500px;filter:brightness( 100% ) contrast( 100% ) saturate( 0% ) blur( 0px ) hue-rotate( 0deg );}.elementor-4584 .elementor-element.elementor-element-8d85af4{--display:flex;}.elementor-4584 .elementor-element.elementor-element-2e5cca4{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}@media(min-width:768px){.elementor-4584 .elementor-element.elementor-element-2eaf695{--content-width:1600px;}.elementor-4584 .elementor-element.elementor-element-d0c96f1{--width:100%;}}@media(max-width:1024px){.elementor-4584 .elementor-element.elementor-element-d0c96f1{--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-4584 .elementor-element.elementor-element-c4bacae{--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;}.elementor-4584 .elementor-element.elementor-element-2e5cca4{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-4584 .elementor-element.elementor-element-2e5cca4{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for tp-contact-form, class: .elementor-element-2f58014 *//* === EstimatorHub Contact Form — Premium Upgrade === */
.wpcf7 {
  background: #fdfdfd;
  padding: 50px;
  border-radius: 28px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08);
  max-width: 900px;
  margin: 60px auto;
  font-family: 'Segoe UI', sans-serif;
  color: #1c1c1c;
  border: 1px solid #eee;
}

.wpcf7 form h1 {
  font-size: 36px;
  color: #0b132b;
  margin-bottom: 25px;
  text-align: center;
  font-weight: 700;
  letter-spacing: -0.5px;
}

.wpcf7 p {
  text-align: center;
  color: #555;
  font-size: 16px;
  margin-bottom: 30px;
}

/* Form Elements */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="file"],
.wpcf7 select,
.wpcf7 textarea {
  width: 100%;
  padding: 16px 20px;
  border: 1px solid #ddd;
  border-radius: 20px;
  font-size: 15px;
  margin-bottom: 20px;
  transition: all 0.3s ease;
  background: #fafafa;
  color: #333;
  box-shadow: inset 0 2px 4px rgba(0,0,0,0.03);
  box-sizing: border-box;
}

.wpcf7 select option {
  color: #333;
  background: #fff;
}

/* Focus highlight */
.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7 select:focus {
  border-color: #ff5e14;
  box-shadow: 0 0 0 3px rgba(255, 94, 20, 0.15);
  outline: none;
  background: #fff;
}

/* Labels */
.wpcf7 label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: #444;
  margin-bottom: 6px;
}

/* Submit Button */
.wpcf7-submit {
  background: linear-gradient(135deg, #ff5e14, #ff7840);
  border: none;
  color: white;
  padding: 15px 30px;
  border-radius: 40px;
  font-size: 18px;
  cursor: pointer;
  width: 100%;
  transition: all 0.3s ease;
  font-weight: 600;
  box-shadow: 0 10px 20px rgba(255, 94, 20, 0.3);
}

.wpcf7-submit:hover {
  background: linear-gradient(135deg, #e65100, #ff5e14);
  box-shadow: 0 12px 24px rgba(255, 94, 20, 0.5);
  transform: translateY(-2px);
}

/* Validation Errors */
.wpcf7-not-valid {
  border-color: #dc3545 !important;
}

.wpcf7-response-output {
  margin-top: 20px;
  padding: 15px;
  border-radius: 10px;
  font-size: 15px;
}

.wpcf7-validation-errors {
  background: #ffe6e6;
  color: #dc3545;
  border: 1px solid #dc3545;
}

.wpcf7-mail-sent-ok {
  background: #e6ffed;
  color: #28a745;
  border: 1px solid #28a745;
}

/* Responsive Layout */
@media (min-width: 768px) {
  .wpcf7 form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }

  /* Full-width for specific elements */
  .wpcf7 textarea,
  .wpcf7-submit,
  .wpcf7 input[type="file"],
  .wpcf7 select[name="service"],
  .wpcf7 input[name="other-service"],
  .wpcf7 textarea[name="message"] {
    grid-column: span 2;
  }
}
/* Custom styled select dropdown with beautiful arrow */
.wpcf7 select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: #fafafa;
  background-image: url("data:image/svg+xml;utf8,<svg fill='gray' height='16' viewBox='0 0 24 24' width='16' xmlns='http://www.w3.org/2000/svg'><path d='M8 10l4 4 4-4'/></svg>");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 14px 14px;
  padding-right: 38px; /* space for arrow */
  border-radius: 20px;
  font-size: 15px;
  color: #333;
  border: 1px solid #ddd;
  box-shadow: inset 0 2px 4px rgba(0,0,0,0.03);
  transition: 0.3s ease;
}

.wpcf7 select:focus {
  border-color: #ff5e14;
  box-shadow: 0 0 0 3px rgba(255, 94, 20, 0.15);
  outline: none;
  background-color: #fff;
}/* End custom CSS */














