.elementor-48 .elementor-element.elementor-element-83e2b1b{--display:flex;--justify-content:center;--overlay-opacity:1;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:250px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-48 .elementor-element.elementor-element-83e2b1b:not(.elementor-motion-effects-element-type-background), .elementor-48 .elementor-element.elementor-element-83e2b1b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://amconstructnew.wpenginepowered.com/wp-content/uploads/2026/08/20210322_122255-1.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-48 .elementor-element.elementor-element-83e2b1b::before, .elementor-48 .elementor-element.elementor-element-83e2b1b > .elementor-background-video-container::before, .elementor-48 .elementor-element.elementor-element-83e2b1b > .e-con-inner > .elementor-background-video-container::before, .elementor-48 .elementor-element.elementor-element-83e2b1b > .elementor-background-slideshow::before, .elementor-48 .elementor-element.elementor-element-83e2b1b > .e-con-inner > .elementor-background-slideshow::before, .elementor-48 .elementor-element.elementor-element-83e2b1b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(270deg, #24202000 16%, #000000 76%);}.elementor-48 .elementor-element.elementor-element-bc51277{--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;}.elementor-48 .elementor-element.elementor-element-dd82434{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-48 .elementor-element.elementor-element-dd82434.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-48 .elementor-element.elementor-element-a8e3bd3 .elementor-icon-list-icon i{color:var( --e-global-color-1768a98 );transition:color 0.3s;}.elementor-48 .elementor-element.elementor-element-a8e3bd3 .elementor-icon-list-icon svg{fill:var( --e-global-color-1768a98 );transition:fill 0.3s;}.elementor-48 .elementor-element.elementor-element-a8e3bd3{--e-icon-list-icon-size:14px;--icon-vertical-align:flex-start;--icon-vertical-offset:9px;}.elementor-48 .elementor-element.elementor-element-a8e3bd3 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-48 .elementor-element.elementor-element-a8e3bd3 .elementor-icon-list-item > a{font-weight:700;}.elementor-48 .elementor-element.elementor-element-a8e3bd3 .elementor-icon-list-text{color:#B4282E;transition:color 0.3s;}.elementor-48 .elementor-element.elementor-element-2ac307c{width:var( --container-widget-width, 812px );max-width:812px;--container-widget-width:812px;--container-widget-flex-grow:0;}.elementor-48 .elementor-element.elementor-element-2ac307c.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-48 .elementor-element.elementor-element-2ac307c .elementor-heading-title{color:var( --e-global-color-1768a98 );}.elementor-48 .elementor-element.elementor-element-e5adc22{width:var( --container-widget-width, 765px );max-width:765px;--container-widget-width:765px;--container-widget-flex-grow:0;color:var( --e-global-color-1768a98 );}.elementor-48 .elementor-element.elementor-element-e5adc22 a{color:var( --e-global-color-accent );}.elementor-48 .elementor-element.elementor-element-e5adc22 a:hover, .elementor-48 .elementor-element.elementor-element-e5adc22 a:focus{color:var( --e-global-color-1768a98 );}.elementor-48 .elementor-element.elementor-element-eae2c60{--display:flex;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}@media(max-width:1200px){.elementor-48 .elementor-element.elementor-element-2ac307c{--container-widget-width:512px;--container-widget-flex-grow:0;width:var( --container-widget-width, 512px );max-width:512px;}}@media(max-width:1024px){.elementor-48 .elementor-element.elementor-element-83e2b1b{--padding-top:200px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-48 .elementor-element.elementor-element-2ac307c{width:var( --container-widget-width, 631px );max-width:631px;--container-widget-width:631px;--container-widget-flex-grow:0;}}@media(min-width:768px){.elementor-48 .elementor-element.elementor-element-dd82434{--width:65%;}}@media(max-width:1440px) and (min-width:768px){.elementor-48 .elementor-element.elementor-element-dd82434{--width:649px;}}@media(max-width:1024px) and (min-width:768px){.elementor-48 .elementor-element.elementor-element-dd82434{--width:100%;}}/* Start custom CSS *//* ==========================================================================
   Contact Form Styling — matched to AM Construction & Remodeling, LLC
   v2 — fixes: eyebrow line break, name/address side-by-side layout,
   card contrast against cream page bg, submit button icon
   (input[type=submit] can't render ::after, so we use a background icon)

   Load this AFTER the existing Gravity Forms stylesheet.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

#gform_wrapper_1[data-form-index="0"].gform-theme {
  --gf-color-primary: #E2382C;
  --gf-color-primary-contrast: #FFFFFF;
  --gf-color-primary-darker: #B92A20;
  --gf-color-primary-lighter: #EB584D;
  --gf-color-out-ctrl-dark: #1A1A1A;
  --gf-ctrl-border-color: #E4DFD3;
  --gf-radius: 6px;

  /* white card so it reads as a card against the page's cream section bg */
  background: #FFFFFF;
  border: 1px solid #EFE9DC;
  border-radius: 12px;
  padding: 44px 46px 36px;
  /* max-width: 720px; */
  margin: 0 auto;
  box-shadow: 0 24px 48px -24px rgba(26,26,26,.16);
  font-family: 'Plus Jakarta Sans', sans-serif;
}

/* ---- Heading block ---- */
#gform_wrapper_1 .gform_heading {
  margin-bottom: 28px;
}

#gform_wrapper_1 .gform_heading .gform_title::before {
  content: "\276F  GET IN TOUCH";
  display: block;              /* fix: was inline-block, ran into the title */
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  color: #E2382C;
  margin-bottom: 12px;
}

#gform_wrapper_1 .gform_heading .gform_title {
  display: block;
  font-weight: 800;
  font-size: 30px;
  line-height: 1.2;
  letter-spacing: -.01em;
  color: #1A1A1A;
  margin: 0 0 10px;
}

#gform_wrapper_1 .gform_heading .gform_description {
  font-size: 15px;
  line-height: 1.65;
  color: #6E6A62;
  max-width: 54ch;
}

/* ---- Field labels ---- */
#gform_wrapper_1 .gfield_label,
#gform_wrapper_1 legend.gfield_label {
  font-size: 16px;
  font-weight: 700;
  color: #1A1A1A;
  margin-bottom: 8px;
}

#gform_wrapper_1 .gfield_required .gfield_required_text {
  color: #E2382C;
  font-weight: 600;
  font-size: 12px;
  text-transform: none;
}

#gform_wrapper_1 .gform-field-label--type-sub {
  color: #8A8579;
  font-weight: 500;
  font-size: 11.5px;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* ---- Text / email / phone / textarea / select inputs ---- */
#gform_wrapper_1 input[type="text"], #gform_wrapper_1 input[type="email"], #gform_wrapper_1 input[type="tel"], #gform_wrapper_1 select, #gform_wrapper_1 textarea {
    background: #FFFFFF;
    border: 1px solid #E4DFD3;
    border-radius: 6px;
    color: #1A1A1A;
    padding: 9px 14px !important;
    font-size: 16px;
    width: 100%;
    box-sizing: border-box;
    transition: border-color .15s ease, box-shadow .15s ease;
    height: auto !important;
    line-height: 1.5;
}

#gform_wrapper_1 input::placeholder,
#gform_wrapper_1 textarea::placeholder {
  color: #B4AFA2;
}

#gform_wrapper_1 input[type="text"]:focus,
#gform_wrapper_1 input[type="email"]:focus,
#gform_wrapper_1 input[type="tel"]:focus,
#gform_wrapper_1 select:focus,
#gform_wrapper_1 textarea:focus {
  outline: none;
  border-color: #E2382C;
  box-shadow: 0 0 0 3px rgba(226,56,44,.14);
}

#gform_wrapper_1 select {
  background-image: var(--gf-icon-ctrl-select);
  background-repeat: no-repeat;
  background-position: right 14px center;
  appearance: none;
}

/* ---- FIX: Name & Address rows collapse to one column without this.
   The theme's grid columns have no width set on their own, so force
   a flex layout so First/Last and City/State sit side by side. ---- */
#gform_wrapper_1 .ginput_container_name.gform-grid-row,
#gform_wrapper_1 .ginput_container_address.gform-grid-row {
  display: flex !important;
  flex-wrap: wrap;
  gap: 16px 20px;
}

#gform_wrapper_1 .ginput_container_name.gform-grid-row > span,
#gform_wrapper_1 .ginput_container_address.gform-grid-row > span {
  flex: 1 1 160px;
  min-width: 0;
}

#gform_wrapper_1 .address_line_1 {
  flex: 1 1 100% !important;
}

#gform_wrapper_1 .gf_clear_complex {
  display: none; /* not needed once the row is flex */
}

/* ---- Radio & checkbox choices ---- */
#gform_wrapper_1 .gchoice {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 0;
}

#gform_wrapper_1 .gfield-choice-input[type="radio"],
#gform_wrapper_1 .gfield-choice-input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  border: 1.5px solid #D8D2C4;
  background: #FFFFFF;
  margin: 0;
  position: relative;
  cursor: pointer;
  flex-shrink: 0;
}

#gform_wrapper_1 .gfield-choice-input[type="radio"] {
  border-radius: 50%;
}

#gform_wrapper_1 .gfield-choice-input[type="checkbox"] {
  border-radius: 4px;
}

#gform_wrapper_1 .gfield-choice-input:checked {
  border-color: #E2382C;
  background: #E2382C;
}

#gform_wrapper_1 .gfield-choice-input[type="radio"]:checked::after {
  content: "";
  position: absolute;
  inset: 5px;
  border-radius: 50%;
  background: #FFFFFF;
}

#gform_wrapper_1 .gfield-choice-input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 5px;
  height: 10px;
  border: solid #FFFFFF;
  border-width: 0 2px 2px 0;
  transform: rotate(40deg);
}

#gform_wrapper_1 .gchoice label {
  color: #3A362E;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
}

/* ---- Field grouping divider (works for both <div> and <fieldset> fields) ---- */
#gform_wrapper_1 fieldset.gfield {
  border: none;
  padding-top: 4px;
}

/*#gform_wrapper_1 #gform_fields_1 > .gfield + .gfield {
  border-top: 1px solid #ECE6D9;
  margin-top: 22px;
  padding-top: 22px;
}*/
.gform-theme--foundation .gform_fields {
    row-gap: 20px !important;
}

/* ---- Submit button ----
   NOTE: input[type=submit] cannot render ::after content — that's a
   replaced-element limitation, not a specificity issue. The arrow here
   is a background-image icon instead. ---- */
#gform_wrapper_1 .gform_footer {
  border-top: none;
  margin-top: 30px;
  padding-top: 6px;
}

#gform_wrapper_1 #gform_submit_button_1 {
  background-color: #E2382C;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 18px center;
  border: none;
  color: #FFFFFF;
  font-weight: 700;
  font-size: 18px;
  border-radius: 6px;
  padding: 14px 46px 14px 28px;
  cursor: pointer;
  transition: background-color .15s ease, transform .12s ease;
  box-shadow: 0 10px 22px -10px rgba(226,56,44,.55);
}

#gform_wrapper_1 #gform_submit_button_1:hover {
  background-color: #B92A20;
  transform: translateY(-1px);
}

#gform_wrapper_1 #gform_submit_button_1:active {
  transform: translateY(0);
}

#gform_wrapper_1 #gform_submit_button_1:focus-visible {
  outline: 2px solid #1A1A1A;
  outline-offset: 3px;
}

/* ---- Responsive ---- */
@media (max-width: 640px) {
  #gform_wrapper_1[data-form-index="0"].gform-theme {
    padding: 30px 22px 26px;
    border-radius: 10px;
  }

  #gform_wrapper_1 .gform_heading .gform_title {
    font-size: 24px;
  }

  #gform_wrapper_1 .ginput_container_name.gform-grid-row > span,
  #gform_wrapper_1 .ginput_container_address.gform-grid-row > span {
    flex: 1 1 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  #gform_wrapper_1 #gform_submit_button_1 {
    transition: none;
  }
  #gform_wrapper_1 #gform_submit_button_1:hover,
  #gform_wrapper_1 #gform_submit_button_1:active {
    transform: none;
  }
}/* End custom CSS */