.elementor-100 .elementor-element.elementor-element-22fad2b{--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;overflow:visible;}.elementor-100 .elementor-element.elementor-element-e8804e0{--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:center;overflow:visible;}.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-100 .elementor-element.elementor-element-2298884{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-100 .elementor-element.elementor-element-2298884 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:34px;font-weight:700;color:#000000;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-100 .elementor-element.elementor-element-9c387ca{font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:500;color:#000000;}.elementor-100 .elementor-element.elementor-element-9c387ca a{color:#000000;}.elementor-100 .elementor-element.elementor-element-afc8e90{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-100 .elementor-element.elementor-element-afc8e90 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:34px;font-weight:700;color:#000000;}.elementor-100 .elementor-element.elementor-element-7e9a4b5{font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:500;color:#000000;}.elementor-100 .elementor-element.elementor-element-7e9a4b5 a{color:#000000;}.elementor-100 .elementor-element.elementor-element-8124309{--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;overflow:visible;}@media(max-width:767px){.elementor-100 .elementor-element.elementor-element-2298884 .elementor-heading-title{font-size:30px;}.elementor-100 .elementor-element.elementor-element-9c387ca{font-size:18px;}.elementor-100 .elementor-element.elementor-element-afc8e90 .elementor-heading-title{font-size:30px;}.elementor-100 .elementor-element.elementor-element-7e9a4b5{font-size:18px;}}@media(min-width:768px){.elementor-100 .elementor-element.elementor-element-e8804e0{--width:50%;}.elementor-100 .elementor-element.elementor-element-8124309{--width:50%;}}/* Start custom CSS for shortcode, class: .elementor-element-d71b1ed */@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&display=swap');

/* Wrapper */
.cf7-contact{
  font-family: "Montserrat", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  max-width: 520px;
  margin: 0 auto;
}

/* Title */
.cf7-contact .cf7-title{
  text-align:center;
  font-weight:800;
  letter-spacing:.5px;
  margin: 0 0 18px;
  font-size: 32px;
}

/* Remove CF7 spacing */
.cf7-contact p{
  margin: 0 !important;
  padding: 0 !important;
}

/* EACH FIELD = consistent label->input spacing */
.cf7-contact .cf7-field{
  display:flex;
  flex-direction:column;
  gap:8px;            /* change to 5 or 8 if needed */
  margin-bottom:14px;
}

/* Labels */
.cf7-contact label{
  font-weight:700;
  font-size:16px;
  line-height:1.2;
  margin:0 !important;
  color:#111;
}

/* CF7 wrapper */
.cf7-contact .wpcf7-form-control-wrap{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}

/* Inputs */
.cf7-contact input[type="text"],
.cf7-contact input[type="email"],
.cf7-contact input[type="tel"],
.cf7-contact select,
.cf7-contact textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #d6d6d6;
  border-radius:12px;
  padding:12px 14px;
  font-size:15px;
  background:#fff;
  outline:none;
  margin:0 !important;
}

/* Same height for select + phone */
.cf7-contact select,
.cf7-contact input[type="tel"]{
  height:48px;
}

/* Textarea */
.cf7-contact textarea{
  height:52px;
  resize:none;
}

/* Focus */
.cf7-contact input:focus,
.cf7-contact select:focus,
.cf7-contact textarea:focus{
  border-color:#111;
  box-shadow:0 0 0 3px rgba(0,0,0,.08);
}

/* Phone row */
.cf7-contact .cf7-row{
  display:flex;
  gap:12px;
}

/* Code + phone widths */
.cf7-contact .cf7-col-code{
  flex:0 0 120px;
}
.cf7-contact .cf7-col-phone{
  flex:1;
  min-width:0;
}

/* Email icon */
.cf7-contact .email-wrap{
  position:relative;
}
.cf7-contact .email-wrap:after{
  content:"";
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  width:18px;
  height:18px;
  opacity:.6;
  background-repeat:no-repeat;
  background-size:contain;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='https://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23111' d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2Zm0 4-8 5-8-5V6l8 5 8-5v2Z'/%3E%3C/svg%3E");
}
.cf7-contact .email-wrap input{
  padding-right:44px;
}

/* Submit */
.cf7-contact .wpcf7-submit{
  border:0;
  background:#000;
  color:#fff;
  padding:13px 30px;
  font-size:15px;
  font-weight:700;
  border-radius:999px;
  cursor:pointer;
}
.cf7-contact .wpcf7-submit:hover{
  filter:brightness(.9);
}

/* Mobile */
@media (max-width:640px){
  .cf7-contact label{ font-size:15px; }
  .cf7-contact .cf7-row{
    flex-direction:row;
    gap:10px;
  }
  .cf7-contact .cf7-col-code{
    flex:0 0 110px;
  }
}

/* Very small phones */
@media (max-width:380px){
  .cf7-contact .cf7-row{
    flex-direction:column;
  }
  .cf7-contact .cf7-col-code{
    width:100%;
    flex:1;
  }
}/* End custom CSS */