body {
  .gform_wrapper {
    &.gform-theme {
      --gf-color-primary: #2f6365 !important;
      --gf-color-primary-darker: #114432 !important;
      --gf-color-in-ctrl-primary: rgba(17, 68, 50, 0.65) !important;
      --gf-field-img-choice-check-ind-size-md: 1.5rem !important;
      --gf-field-img-choice-card-space-md: 0 !important;
      --gf-icon-font-size: 0.75rem !important;
      --gf-form-gap-y: 1rem !important;
    }

    legend.gform-field-label {
      text-align: left;
      display: block;
    }

    legend.gform-field-label .gfield_required {
      display: inline !important;
      margin-inline-start: 0.5rem;
    }
    
    .gfield_required_text {
      width: 100%;
    }
    button, .button {
      font-weight: bold !important;
      text-transform: uppercase !important;
    }

    .datepicker  {
      width: 100% !important;
    }

    .contact-paf {
      width: 100% !important;
    }
    #addressSelect {
      margin-block-end: .5rem;
    }
    .contact-paf-status {
      font-size: 14px;
    }
    .gield:has(.contact-paf-status:empty):has(.contact-paf-results:empty) {
      display: none;
    }
    .gfield[class*="contact-paf-"]:not(.contact-paf-input) {
      display: none;
    }
    .gfield--input-type-html:has(.contact-paf-button) {
      display: none;
    }

    input.gform_button {
    }
  }
  .gform_wrapper:has(.gform_page) {
    box-shadow: 2px 2px 5px #00000091;
    background-color: rgba(243, 243, 243, 0.8);
    backdrop-filter: blur(14px);
    
    @media screen and (min-width: 1024px) {
      margin-inline: 2rem -2rem;
    }

    form {
      margin: 0;
    }
    .gform_heading {
      background-color: #2f6365cf;
      padding: .25rem 2rem 0 2rem;
      color: #FFFFFF;
      margin: 0;
      text-align: center;

      .gform_title {
        margin: 0;
        font-size: 1.75rem;
        font-weight: 500;
        line-height: 1.2;
        &:has(.gform_description:not(:empty)) {
          display: none;
        }
      }
      .gform_description {
        font-family: "Geometr415MdBTWXX-Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
        margin: 0;
        font-size: 1.75rem;
        font-weight: 500;
        line-height: 1.2;
        color: #FFFFFF;
      }
      .gform_description:empty, .gform_required_legend:empty {
        display: none;
      }
    }
    .gform_page {
      margin: 1rem 1rem 0;
      padding: 0 0 1rem;
      position: relative;

      .gform_page_fields {
        padding: 1rem;
        border: 1px solid #2f6365;
      }

      .gfield--type-html:has(legend) {
        legend {
          font-size: 1rem;
          font-weight: 700;
        }
      }
      @media screen and (min-width: 1024px) {
        &:has(.gfield--type-html legend) {
          padding-top: 1rem;
          overflow-x: hidden;
          .gform_page_fields {
            border-top-width: 0;
            padding-top: 2rem;
            position: relative;
          }
          .gfield--type-html:has(legend) {
            position: absolute;
            top: -13px;
            left: 50%;
            transform: translateX(-50%);
            /* & + .gfield {
              margin-block-start: 1rem;
            } */
            legend {
              white-space: nowrap;
              margin: 0;
              padding-inline: 0.5rem;
              &:before {
                content: '';
                height: 1px;
                background-color: #2f6365;
                right: 100%;
                left: -50vw;
                position: absolute;
                top: 50%;
              }
              &:after {
                content: '';
                height: 1px;
                background-color: #2f6365;
                left: 100%;
                right: -50vw;
                position: absolute;
                top: 50%;
              }
            }
          }
        }
      }
    }
    .ginput_container_image_choice {
      .gfield_checkbox {
        gap: 0;
        align-items: flex-start;
        margin: -1rem 0 0 -1rem;
        .gchoice {
          padding: 1rem 0 0 1rem;
          position: relative;
          min-width: 0;
          max-width: 100%;
          width: 50%;
          @media screen and (min-width: 1024px) {
            width: 33.333%;
          }
          border: none;
          background: none;
          box-shadow: none;
          outline: none;
          cursor: pointer;
          &:focus, &:active {
            outline: none;
          }
          &:has(input:checked):after {
            inset-block-start: 1.5rem;
            inset-inline-end: 0.5rem;
          }
          .gfield-image-choice-wrapper-outer {
            border: 2px solid rgba(17, 68, 50, 0.65);
            border-radius: 0.25rem;
            padding: 0;
            height: 110px;
            transition: 250ms ease;
            position: relative;
            @media screen and (min-width: 992px) {
              height: 150px;
            }
            &:hover {
              transform: scale(1.05);
            }
            .gfield-choice-image-wrapper {
              height: 100%;
              width: 100%;
              margin: 0;
              img {
                width: 100%;
                height: 100%;
                object-fit: cover;
              }
            }
            .gfield-image-choice-wrapper-inner {
              display: block;
              position: absolute;
              bottom: -2px;
              left: -2px;
              width: calc(100% + 4px);
              background-color: #f3f3f3;
              border: 2px solid rgba(17, 68, 50, 0.65);
              border-width: 0 2px 2px;
              padding: .2rem .1rem;
              text-align: center;
              border-bottom-left-radius: 0.25rem;
              border-bottom-right-radius: 0.25rem;

              .gfield-choice-input {
                opacity: 0;
                position: absolute;
              }
              .gform-field-label {
                margin: 0;
                color: rgb(103, 103, 103);
                font-size: 1rem;
              }
            }
          }
        }
      }
    }
    .gform-page-footer {
      justify-content: flex-end;
      .gform_validation_errors {
        width: 100%;
      }
      .gfield_required_text {
        width: 100%;
        margin-block-end: 1rem;
        order: 0;
      }
      .gform_previous_button {
        order: 1;
        margin-inline-end: auto !important;
      }
      .gform_next_button, input.gform_button {
        order: 5;
      }
      span {
        order: 3;
        margin-inline-end: 10px;
      }
    }
  }
  .gfield--type-radio.has-buttons {
    .gfield_radio {
      display: flex;
      flex-wrap: wrap;
      gap: 1rem;
      flex-direction: row;
      @media screen and (min-width: 1024px) {
        flex-wrap: nowrap;
      }
      .gchoice {
        @media screen and (max-width: 1023px) {
          width: 100%;
        }
        display: inline-block;
        .gfield-choice-input {
          position: absolute;
          opacity: 0;
          &:checked + .gform-field-label {
            border-color: #ff0040;
            background-color: #ff0040;
          }
        }
        .gform-field-label {
          width: 100%;
          transition: 250ms ease;
          font-size: 11px;
          @media screen and (max-width: 1023px) {
            padding-inline: 0.25rem;
          }
        }
      }
    }
  }
}

#ui-datepicker-div {
  .ui-widget-header {
    border: none;
    background: none;
  }
}