.elementor-42 .elementor-element.elementor-element-82ecf1e{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-cacef16{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-132a90e{--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 30px;--row-gap:0px;--column-gap:30px;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-0e3745c{--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;}.elementor-42 .elementor-element.elementor-element-fdb2d54{--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;}.elementor-42 .elementor-element.elementor-element-548ea74{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-42 .elementor-element.elementor-element-db4f0f3{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-42 .elementor-element.elementor-element-132a90e{--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-42 .elementor-element.elementor-element-132a90e{--content-width:1250px;}.elementor-42 .elementor-element.elementor-element-0e3745c{--width:55%;}.elementor-42 .elementor-element.elementor-element-fdb2d54{--width:50%;}}/* Start custom CSS for html, class: .elementor-element-8f86c21 */.wf-contact-hero{
  position:relative;
  overflow:hidden;
  background-image:url("https://www.wilfordboiler.com/wp-content/uploads/2026/05/pasted_file_mHjxD4_factory_e66f914c.webp");
  background-size:cover;
  background-position:center;
}

.wf-contact-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(3,16,35,.92) 0%,
    rgba(3,16,35,.86) 42%,
    rgba(3,16,35,.72) 100%
  );
}

.wf-contact-container{
  position:relative;
  z-index:2;
  max-width:1280px;
  margin:0 auto;
  padding:80px 24px;
}

.wf-contact-content{
  max-width:640px;
}

.wf-contact-breadcrumb{
  margin-bottom:22px;
  font-size:14px;
}

.wf-contact-breadcrumb a{
  color:#f47b2c;
  text-decoration:none;
}

.wf-contact-breadcrumb span{
  color:rgba(255,255,255,.7);
}

.wf-contact-content h1{
  margin:0 0 26px;
  color:#fff;
  font-size:88px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.04em;
}

.wf-contact-content h1{
  margin:0 0 22px;
  color:#fff;
  font-size:66px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.04em;
}

.wf-contact-content p{
  max-width:620px;
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:17px;
  line-height:1.75;
  font-weight:500;
}

/* bottom contact bar */

.wf-contact-bar{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  background:#d96e29;
  border-top:1px solid rgba(255,255,255,.12);
}

.wf-contact-item{
  display:flex;
  align-items:center;
  gap:16px;
  padding:24px 34px;
  border-right:1px solid rgba(255,255,255,.2);
}

.wf-contact-item:last-child{
  border-right:none;
}

.wf-contact-icon{
  flex:0 0 auto;
  font-size:25px;
  line-height:1;
}

.wf-contact-info span{
  display:block;
  margin-bottom:4px;
  color:rgba(255,255,255,.75);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.wf-contact-info strong{
  display:block;
  color:#fff;
  font-size:16px;
  line-height:1.4;
  font-weight:800;
}

/* tablet */

@media(max-width:1100px){

  .wf-contact-content h1{
    font-size:70px;
  }

  .wf-contact-bar{
    grid-template-columns:repeat(2,1fr);
  }

  .wf-contact-item:nth-child(2){
    border-right:none;
  }

}

/* mobile */

@media(max-width:767px){

  .wf-contact-container{
    padding:30px 18px 30px;
  }

  .wf-contact-breadcrumb{
    margin-bottom:16px;
    font-size:13px;
  }

  .wf-contact-content h1{
    margin-bottom:18px;
    font-size:28px;
    line-height:1.05;
  }

  .wf-contact-content p{
    font-size:14px;
    line-height:1.7;
  }

  .wf-contact-bar{
    grid-template-columns:1fr;
  }

  .wf-contact-item{
    padding:10px 15px;
    border-right:none;
    border-bottom:1px solid rgba(255,255,255,.12);
  }

  .wf-contact-item:last-child{
    border-bottom:none;
  }

  .wf-contact-icon{
    font-size:18px;
  }

  .wf-contact-info strong{
    font-size:14px;
  }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0e3745c */.elementor-42 .elementor-element.elementor-element-0e3745c{
  padding:34px;
  border-radius:14px;
  background:#f4f6f9;
  border:1px solid #dfe5ee;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-container,
.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-form,
.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field-container,
.elementor-42 .elementor-element.elementor-element-0e3745c form{
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-title{
  color:#121a2f !important;
  font-size:26px !important;
  font-weight:900 !important;
  margin-bottom:8px !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-description{
  color:#667085 !important;
  font-size:15px !important;
  line-height:1.45 !important;
  margin-bottom:24px !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field{
  padding-bottom:16px !important;
  margin-bottom:0 !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field-label{
  margin:0 0 7px !important;
  color:#121a2f !important;
  font-size:14px !important;
  font-weight:800 !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-required-label{
  color:#e66f2a !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-layout-column{
  padding-left:8px !important;
  padding-right:8px !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c input[type="text"],
.elementor-42 .elementor-element.elementor-element-0e3745c input[type="email"],
.elementor-42 .elementor-element.elementor-element-0e3745c input[type="tel"],
.elementor-42 .elementor-element.elementor-element-0e3745c textarea,
.elementor-42 .elementor-element.elementor-element-0e3745c select{
  width:100% !important;
  height:50px !important;
  min-height:50px !important;
  border:1px solid #d6dce5 !important;
  border-radius:8px !important;
  background:#fff !important;
  color:#121a2f !important;
  font-size:15px !important;
  box-shadow:none !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c textarea{
  height:130px !important;
  min-height:130px !important;
  padding-top:14px !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c input::placeholder,
.elementor-42 .elementor-element.elementor-element-0e3745c textarea::placeholder{
  color:#7b8494 !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c input:focus,
.elementor-42 .elementor-element.elementor-element-0e3745c textarea:focus,
.elementor-42 .elementor-element.elementor-element-0e3745c select:focus{
  border-color:#e66f2a !important;
  box-shadow:0 0 0 3px rgba(230,111,42,.13) !important;
  outline:none !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-uploader{
  min-height:130px !important;
  padding:24px 14px !important;
  border:1.5px dashed #d0d5dd !important;
  border-radius:10px !important;
  background:#f8fafc !important;
  text-align:center;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-uploader-description,
.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-uploader span,
.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field-description{
  color:#7b8494 !important;
  font-size:13px !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-submit-container{
  padding:8px 0 0 !important;
  margin:0 !important;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-submit{
  width:100% !important;
  min-height:56px !important;
  border:none !important;
  border-radius:8px !important;
  background:#df6b28 !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:900 !important;
  cursor:pointer;
}

.elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-submit:hover{
  background:#f47b2c !important;
}

@media(max-width:767px){

  .elementor-42 .elementor-element.elementor-element-0e3745c{
    padding:20px 14px;
  }

  /* reduce field spacing */
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field{
    padding-bottom:10px !important;
  }

  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field-label{
    margin-bottom:5px !important;
    font-size:13px !important;
  }

  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-layout-column{
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .elementor-42 .elementor-element.elementor-element-0e3745c input[type="text"],
  .elementor-42 .elementor-element.elementor-element-0e3745c input[type="email"],
  .elementor-42 .elementor-element.elementor-element-0e3745c input[type="tel"],
  .elementor-42 .elementor-element.elementor-element-0e3745c textarea,
  .elementor-42 .elementor-element.elementor-element-0e3745c select{
    height:42px !important;
    min-height:42px !important;
    font-size:14px !important;
  }

  .elementor-42 .elementor-element.elementor-element-0e3745c textarea{
    height:96px !important;
    min-height:96px !important;
  }

  /* smaller upload area */
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-uploader{
    min-height:92px !important;
    padding:18px 12px !important;
  }

  /* smaller button */
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-submit{
    min-height:44px !important;
    font-size:14px !important;
    border-radius:7px !important;
  }

}
@media(max-width:767px){

  .elementor-42 .elementor-element.elementor-element-0e3745c{
    padding:18px 14px;
  }

  /* WPForms layout stack */
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-layout-row,
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-layout-column,
  .elementor-42 .elementor-element.elementor-element-0e3745c [class*="wpforms-layout-column"]{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    display:block !important;
    margin:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }

  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field-layout,
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field-layout .wpforms-layout-row,
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field-row{
    margin-left:0 !important;
    margin-right:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  /* field spacing */
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field{
    padding-bottom:6px !important;
    margin:0 !important;
  }

  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field-label{
    margin:0 0 3px !important;
    font-size:13px !important;
    line-height:1.2 !important;
  }

  /* inputs */
  .elementor-42 .elementor-element.elementor-element-0e3745c input[type="text"],
  .elementor-42 .elementor-element.elementor-element-0e3745c input[type="email"],
  .elementor-42 .elementor-element.elementor-element-0e3745c input[type="tel"],
  .elementor-42 .elementor-element.elementor-element-0e3745c textarea,
  .elementor-42 .elementor-element.elementor-element-0e3745c select{
    width:100% !important;
    max-width:100% !important;
    height:40px !important;
    min-height:40px !important;
    font-size:13px !important;
    box-sizing:border-box !important;
  }

  .elementor-42 .elementor-element.elementor-element-0e3745c textarea{
    height:86px !important;
    min-height:86px !important;
  }

  /* phone field */
  .elementor-42 .elementor-element.elementor-element-0e3745c .iti,
  .elementor-42 .elementor-element.elementor-element-0e3745c .iti input{
    width:100% !important;
    max-width:100% !important;
  }

  /* upload */
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-field-file-upload{
    padding-bottom:4px !important;
  }

  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-uploader{
    min-height:84px !important;
    padding:14px 10px !important;
  }

  /* button */
  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-submit-container{
    padding-top:4px !important;
    margin:0 !important;
  }

  .elementor-42 .elementor-element.elementor-element-0e3745c .wpforms-submit{
    min-height:42px !important;
    font-size:13px !important;
    border-radius:7px !important;
  }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-fdb2d54 */.elementor-42 .elementor-element.elementor-element-fdb2d54{
  max-width:620px;
}

/* heading */
.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-agent-head{
  margin-bottom:34px;
}

.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-agent-head span{
  display:inline-block;
  margin-bottom:14px;
  color:#df6b28;
  font-size:13px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-agent-head h2{
  margin:0 0 22px;
  color:#121a2f;
  font-size:32px;
  line-height:1.08;
  font-weight:600;
  letter-spacing:-.04em;
}

.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-agent-head h2 strong{
  color:#df6b28;
}



/* cards */
.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-list{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-card{
  display:flex;
  align-items:center;
  gap:22px;
  padding:10px 20px;
  border-radius:16px;
  background:#f5f7fb;
  border:1px solid #dfe5ee;
}

.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:40px;
  min-width:40px;
  height:40px;
  border-radius:15px;
  background:#df6b28;
  color:#fff;
  font-size:17px;
}

.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-text span{
  display:block;
  margin-bottom:8px;
  color:#7a8292;
  font-size:12px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-text strong{
  display:block;
  margin-bottom:6px;
  color:#121a2f;
  font-size:14px;
  line-height:1.4;
  font-weight:600;
}

.elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-text p{
  margin:0;
  color:#667085;
  font-size:14px;
  line-height:1.6;
  font-weight:500;
}

/* mobile */
@media(max-width:767px){

  .elementor-42 .elementor-element.elementor-element-fdb2d54{
    max-width:100%;
  }

  .elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-agent-head{
    margin-bottom:24px;
  }

  .elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-agent-head h2{
    font-size:26px;
  }

  .elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-agent-head p{
    font-size:14px;
    line-height:1.7;
  }

  .elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-card{
    align-items:flex-start;
    gap:16px;
    padding:10px;
    border-radius:14px;
  }

  .elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-icon{
    width:30px;
    min-width:30px;
    height:30px;
    border-radius:14px;
    font-size:15px;
  }

  .elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-text strong{
    font-size:13px;
  }

  .elementor-42 .elementor-element.elementor-element-fdb2d54 .wf-contact-text p{
    font-size:14px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1e59360 */.wf-location-section{
  background:#ffff;
  padding:60px 0;
}

.wf-location-container{
  max-width:1250px;
  margin:0 auto;
  padding:0 24px;
}

.wf-location-head{
  margin-bottom:30px;
}

.wf-location-head span{
  display:block;
  margin-bottom:16px;
  color:#df6b28;
  font-size:13px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.wf-location-head h2{
  margin:0 0 20px;
  color:#121a2f;
  font-size:42px;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.04em;
}

.wf-location-head h2 strong{
  color:#df6b28;
}

.wf-location-head p{
  max-width:1180px;
  margin:0;
  color:#667085;
  font-size:16px;
  line-height:1.7;
  font-weight:500;
}

.wf-location-mapbox{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  background:#14233f;
  padding:0;
  min-height:420px;
}

/* google map */
.wf-location-mapbox iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  filter:grayscale(.1) brightness(.78);
}

/* dark overlay */
.wf-location-mapbox:before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(10,20,40,.58);
  z-index:1;
}

/* content */
.wf-location-overlay{
  position:relative;
  z-index:2;
  min-height:420px;
  padding:50px 30px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.wf-location-pin{
  font-size:42px;
  margin-bottom:18px;
}

.wf-location-overlay h3{
  margin:0 0 14px;
  color:#fff;
  font-size:32px;
  line-height:1.1;
  font-weight:900;
}

.wf-location-overlay p{
  margin:0 0 34px;
  color:rgba(255,255,255,.78);
  font-size:17px;
}

.wf-location-overlay a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 32px;
  border-radius:12px;
  background:#df742f;
  color:#fff;
  font-size:14px;
  font-weight:800;
  text-decoration:none;
  transition:.25s ease;
}

.wf-location-overlay a:hover{
  background:#f4863d;
  transform:translateY(-2px);
}

/* mobile */
@media(max-width:767px){

  .wf-location-mapbox,
  .wf-location-overlay{
    min-height:400px;
  }

  .wf-location-overlay{
    padding:30px 20px;
  }

  .wf-location-overlay h3{
    font-size:25px;
  }

  .wf-location-overlay p{
    font-size:14px;
    line-height:1.5;
  }

  .wf-location-overlay a{
    width:100%;
    padding:15px 20px;
    font-size:15px;
  }

}
@media(max-width:767px){

  .wf-location-head span{
    font-size:12px;
    letter-spacing:.18em;
  }

  .wf-location-head h2{
    font-size:32px;
    line-height:1.05;
    margin-bottom:18px;
  }

  .wf-location-head p{
    font-size:15px;
    line-height:1.75;
  }

.wf-location-head span{
    font-size:12px;
    letter-spacing:.18em;
  }

  .wf-location-head h2{
    font-size:42px;
    line-height:1.05;
    margin-bottom:18px;
  }

  .wf-location-head p{
    font-size:15px;
    line-height:1.75;
  }

  /* button */
  .wf-location-overlay a{
    padding:13px 22px;
    font-size:14px;
    border-radius:8px;
  }

}/* End custom CSS */