/* ===========================================
   FLOATING ELEMENTS
   =========================================== */
.floating-image-patches {
  position: absolute;
  z-index: -10;
}

.floating-1-patches {
  top: 20%;
  left: 2%;
  animation: float1 6s ease-in-out infinite;
}

.floating-2-patches {
  bottom: 30%;
  left: 80%;
  animation: float2 8s ease-in-out infinite;
}

.floating-3-patches {
  top: 50%;
  left: 20%;
  animation: float2 4s ease-in-out infinite;
}

.floating-4-patches {
  top: 20%;
  right: 10%;
  animation: float2 10s ease-in-out infinite;
}

.bg-circle-1-patches {
  position: absolute;
  left: 0;
  top: 30%;
  z-index: -10;
}

.bg-circle-2-patches {
  position: absolute;
  right: 0;
  bottom: 30%;
  z-index: -10;
}

/* ===========================================
   PATCHES - HERO SECTION
   =========================================== */

.patches-heading {
  font-size: 50px;
  margin-bottom: 1rem;
}

.patches-paint-emb {
  color: #fff;
  background-image: url('/assets/images/Frame.png');
  background-repeat: no-repeat;
  padding-left: 36px;
  background-size: cover;
  width: fit-content;
}

.patches-desc {
  max-width: 875px;
  margin: 0 auto;
  margin-bottom: 3rem;
}

/* ===========================================
   ABOUT - PURPLE FORM SECTION
   =========================================== */

.p-form-section {
}

.form-heading {
  font-size: 22px;
  font-weight: bold;
  color: var(--color-d-blue);
}

/* ===========================================
   RESPONSIVE STYLES
   =========================================== */

/* Large Screens (1200px and down) */
@media only screen and (max-width: 1200px) {
}

/* Tablets (992px and down) */
@media only screen and (max-width: 992px) {
  .patches-heading {
    font-size: 42px;
    line-height: 50px;
    margin-bottom: 1rem;
  }

  .patches-paint-emb {
    padding-left: 28px;
  }

  .patches-desc {
    max-width: 100%;
    margin-bottom: 2rem;
  }

  .form-heading {
    font-size: 20px;
  }

  .p-form-section .row {
    gap: 2rem !important;
  }

  .content-section {
    margin-bottom: 0;
  }
}

/* Mobile (768px and down) */
@media only screen and (max-width: 768px) {
  .patches-heading {
    font-size: 34px;
    line-height: 40px;
    margin-bottom: 1rem;
  }

  .patches-paint-emb {
    padding-left: 24px;
    background-size: contain;
  }

  .patches-desc {
    max-width: 100%;
    margin-bottom: 1.5rem;
    padding: 0 12px;
  }

  .emb-patches-section .separator {
    display: none;
  }

  .form-heading {
    font-size: 18px;
  }

  .p-form-section .row {
    gap: 1.5rem !important;
    flex-direction: column;
  }

  .p-form-section .col-lg-6,
  .p-form-section .col-md-12 {
    max-width: 100%;
    flex: 0 0 100%;
    margin-bottom: 0;
  }

  .content-section {
    margin-bottom: 0;
  }

  .content-section p {
    font-size: 14px;
    line-height: 20px;
  }
}

/* Small Mobile (480px and down) */
@media only screen and (max-width: 480px) {
  .patches-heading {
    font-size: 30px;
    line-height: 36px;
  }

  .patches-paint-emb {
    padding-left: 20px;
    display: inline-block;
  }

  .patches-desc {
    padding: 0 8px;
    margin-bottom: 1.25rem;
    font-size: 14px;
  }

  .form-heading {
    font-size: 16px;
  }

  .p-form-section .row {
    gap: 1rem !important;
  }

  .content-section p {
    font-size: 13px;
    line-height: 19px;
  }
}

/* Very Small Mobile (320px and down) */
@media only screen and (max-width: 320px) {
  .patches-heading {
    font-size: 26px;
    line-height: 32px;
  }

  .patches-paint-emb {
    padding-left: 18px;
  }

  .patches-desc {
    padding: 0 6px;
    margin-bottom: 1rem;
    font-size: 13px;
  }

  .form-heading {
    font-size: 16px;
  }

  .p-form-section .row {
    gap: 0.75rem !important;
  }

  .content-section p {
    font-size: 12px;
    line-height: 18px;
  }
}