/*
Theme Name: Ridgecrest
Author: JNIX
Description: Custom theme for Ridgecrest Pest Control
Version: 1.0
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

html {
  margin-top: 0 !important;
}

form#forminator-module-27 {
  display: block !important;
}

form#forminator-module-26 {
  display: block !important;
}

.forminator-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  margin-bottom: 30px;
}

@media (max-width: 768px) {
  .forminator-row {
    gap: 0px;
  }

  /*#forminator-module-27 .forminator-row:nth-of-type(6) {
    gap: 30px !important;
    margin: 0px !important;
  }*/
  
  /* Special spacing for the 5th row with number fields in form 27 */
  /*#forminator-module-27 .forminator-row:nth-of-type(5),
  #forminator-module-27 div:has(#number-2),
  #forminator-module-27 div:has(.forminator-field-number) + div:has(.forminator-field-number) {
    gap: 30px !important;
  }*/
}

.forminator-col-6 {
  width: calc(50% - 0.625rem);
}

.forminator-col-12 {
  width: 100%;
}

/* === INPUTS, TEXTAREAS, SELECTS === */
.forminator-input,
.forminator-select--field,
.forminator-number--field {
  width: 100%;
  padding: 0rem 1rem;
  font-size: 1rem;
  border: 0px solid #e5e7eb !important;
  border-radius: 8px;
  background: #f4f7fc !important;
  color: #111827;
  transition: border-color 0.2s;
  margin-bottom: 0px !important;
  line-height: 1.5;
  height: 60px !important;
}

/* Handle forminator fields separately - don't apply nice-select */
.forminator-field .nice-select {
  display: none !important;
}

/* Make sure the Select2 container is visible and properly sized */
.forminator-field .select2-container {
  width: 100% !important;
  height: 60px !important;
  display: block !important;
}

/* === LABELS === */
.forminator-label {
  font-weight: 700;
  display: block;
  margin-bottom: 10px;
  color: #1f2937;
  font-size: 14px;
}

/* Force the column itself to be smaller */
.forminator-field-number.forminator-col {
  flex: 0 0 auto;
  width: auto;
}

/* Make the number field narrower */
.forminator-field-number input[type="number"] {
  max-width: 170px;
  width: 100%;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: auto;
  margin: 0;
}

/* Firefox */
input[type="number"] {
  -moz-appearance: number-input;
  appearance: number-input;
}

/* === RADIO BUTTONS === */
.forminator-radio {
  margin-right: 1.5rem;
  display: inline-flex;
  align-items: center;
  font-size: 0.8rem;
  color: #111827;
}

.forminator-radio-bullet {
  margin-right: 0.5rem;
  border: 2px solid #d1d5db;
  background: #fff;
  width: 16px;
  height: 16px;
  border-radius: 50%;
}

input[type="radio"]:checked+.forminator-radio-bullet {
  background: #bcd01d;
  border-color: #bcd01d;
}

.forminator-radio input[type="radio"] {
  display: none;
}

/* === SUBMIT BUTTON === */
/* Common button styling for all forms */
.forminator-button.forminator-button-submit {
  width: 100% !important;
  background-color: #111827 !important;
  color: #fff !important;
  padding: 1rem !important;
  font-weight: 600 !important;
  border-radius: 12px !important;
  border: none !important;
  transition: background-color 0.3s ease !important;
  height: 78px !important;
  text-align: left !important;
  position: relative !important;
  overflow: hidden !important;
  z-index: 0 !important;

  &::before {
    content: '';
    background-color: #bcd01d;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    transition: transform 0.24s cubic-bezier(0.37, 0.31, 0.31, 0.9), -webkit-transform 0.24s cubic-bezier(0.37, 0.31, 0.31, 0.9);
    transform: scaleX(0);
    transform-origin: right center;
  }

  &::after {
    color: #ffffff;
    border-color: #ffffff;
    background-color: transparent;
    content: "\e902";
    font-family: icomoon !important;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    font-size: 65%;
    width: 26px;
    height: 26px;
    line-height: 24px;
    border-radius: 50%;
    text-align: center;
    display: inline-block;
    border: 2px solid white;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
    position: absolute;
    right: 16px;

    @media (max-width: 1280px) {
      line-height: 22px;
    }
  }
}

.forminator-button-submit:hover,
.forminator-button.forminator-button-submit:hover {
  cursor: pointer;

  &::before {
    transform: scaleX(1);
    transform-origin: left center;
  }

  &::after {
    color: #0C2435;
    border-color: #ffffff;
    background-color: #ffffff;
  }
}

.forminator-row-last .forminator-col {
  width: 100%;
}

.forminator-row-last .forminator-field {
  width: 100%;
}

.forminator-row-last {
  margin-bottom: 0 !important;
}

.forminator-hidden {
  display: none !important;
}

.forminator-ui.forminator-custom-form-27 {
  display: none !important;
}

.forminator-custom-form-26 {
  display: none !important;
}

/*19 jul*/
.forminator-custom-form {
  display: block !important;

  input,
  select {
    border: 2px solid #eef3fa !important;
  }

  input:focus,
  select:focus {
    border: 2px solid #BCD01D !important;
  }
  
  /* Select2 fixes */
  .select2-container {
    width: 100% !important;
  }
  
  .select2-container .select2-selection--single {
    height: 60px !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 1rem !important;
    border: 2px solid #eef3fa !important;
    border-radius: 8px !important;
    background: #f4f7fc !important;
  }
  
  .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 60px !important;
    right: 10px !important;
  }
  
  .select2-container .select2-selection__rendered {
    color: #111827 !important;
    line-height: 60px !important;
    font-size: 1rem !important;
    padding-left: 0 !important;
  }
  
  /* Force select2 height with extremely specific selectors */
  .forminator-ui .forminator-select2 + .select2-container .select2-selection--single,
  span.select2-selection.select2-selection--single,
  .select2 .select2-container .select2-selection,
  .forminator-select2 + .select2-container .select2-selection--single,
  .forminator-field .select2-container .select2-selection {
    height: 60px !important;
    min-height: 60px !important;
  }
  
  .forminator-ui .forminator-select2 + .select2-container .select2-selection__rendered,
  span.select2-selection__rendered,
  .select2-selection__rendered[style*="line-height"],
  #forminator-module-27 .select2-selection__rendered {
    line-height: 60px !important;
    height: 60px !important;
    min-height: 60px !important;
  }
  
  .forminator-ui .forminator-select2 + .select2-container .select2-selection__arrow,
  span.select2-selection__arrow,
  .select2-selection__arrow[style*="height"],
  #forminator-module-27 .select2-selection__arrow {
    height: 60px !important;
    min-height: 60px !important;
  }
  
  /* Additional override for any inline styles */
  [style*="height: 44.8px"] {
    height: 60px !important;
    min-height: 60px !important;
  }
  
  [style*="line-height: 44.8px"] {
    line-height: 60px !important;
  }
  
  /* Remove any transitions that might interfere */
  .select2-container *,
  .select2-selection,
  .select2-selection__rendered,
  .select2-selection__arrow {
    transition: none !important;
  }
  
  /* Dropdown styles */
  .select2-dropdown {
    border: 2px solid #eef3fa !important;
    border-radius: 8px !important;
    overflow: hidden !important;
  }
  
  .select2-results__option {
    padding: 10px 15px !important;
    font-size: 1rem !important;
  }
  
  .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #BCD01D !important;
    color: #111827 !important;
  }
  
  /* Ensure Select2 is visible and properly displayed */
  .forminator-field .select2-container {
    display: block !important;
    margin-top: 0 !important;
  }
  
  /* Make sure dropdown shows properly */
  .select2-container--open .select2-dropdown {
    margin-top: 2px;
  }
}

/***/

/* === PROCESS CARDS FIX === */
@media (min-width: 769px) {
  .process__title {
    min-height: 84.38px !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  
  .process__desc {
    min-height: 73.5px !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

/* === RESPONSIVE === */
@media (max-width: 768px) {
  .forminator-col-6 {
    width: 100%;
  }
}


/* Hero header responsive fixes */
@media (max-width: 768px) {

  .slick-prev,
  .slick-next {
    top: 59% !important;
    /* Lower them vertically */
    transform: translateY(-50%);
  }

  .slide__content .d-flex {
    justify-content: center !important;
  }

  .slick-list,
  .slick-track,
  .slide-item {
    height: 330px !important;
    min-height: 330px !important;
  }

  .slide-item {
    display: flex !important;
    align-items: center;
    position: relative;
  }

  .slide__content {
    position: relative;
    z-index: 1;
    width: 100%;
  }

  .bg-video {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    z-index: 0;
  }
}

/* === Apply Inline Layout ONLY on Desktop === */

footer {
  .forminator-ui.forminator-custom-form,
  .forminator-custom-form {
    .forminator-button-submit {
      &::after {
        display: none !important;
      }
    }

    input:focus {
      border-color: transparent !important;
    }
  }

  @media (min-width: 1280px) {
    .forminator-ui.forminator-custom-form-26,
    .forminator-custom-form-26,
    .forminator-custom-form {
      position: relative !important;
      margin: 0 !important;

      .forminator-row {
        margin: 0 !important;
      }

      .forminator-button-submit {
        position: absolute !important;
        bottom: 10px !important;
        right: 5px !important;
        min-width: 100px !important;
        font-size: 15px !important;
        border-radius: 6px !important;
        padding: 0 15px !important;
        line-height: 1.5 !important;
        height: 40px !important;
        width: fit-content !important;

        &::after {
          display: none !important;
        }
      }

      .forminator-error-message{
        position: absolute !important;
      }
    }
  }

  .social-icons {
    display: none !important;
  }

  
}
