.textarea-block {

  overflow: hidden;

  margin-top: 120px;

  position: relative;

}

.wpcf7-response-output {

  margin-top: 0px !important;

  white-space: pre-line;

}

.wpcf7 form.sent .wpcf7-response-output {
  background: #5f5e4a;
  color: #FFF;
  border: 1px #5f5e4a solid !important;
  line-height: 25px;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-top: 0.4em !important;
  padding-bottom: 0.4em !important;
}

strong.bold-text {

  font-weight: 400;

  font-size: 40px;

  line-height: 52px;

  letter-spacing: 1px;

}



p.large-text-spacing {

  font-weight: 200;

  font-size: 20px;

  line-height: 32px;

  letter-spacing: 0.4px;

}



p.small-text-mobile {

  font-weight: 200;

  font-size: 20px;

  line-height: 32px;

  letter-spacing: 0.4px;

}



h2 {

  letter-spacing: 0.4px !important;

  margin-top: 2px !important;

  font-weight: 500 !important;

  font-size: 42px !important;

  line-height: 48px !important;

  margin-bottom: 20px !important;

}





.strong-label {

  font-weight: 500;

  font-size: 20px;

  line-height: 30px !important;

  margin-bottom: -2px !important;

  letter-spacing: 1px;

}



.large-text-height-tablet {

  font-weight: 200;

  font-size: 20px;

  line-height: 24px;

  margin-bottom: 9px;

}



.contact-form-submit span {

  display: none;

}



.wpcf7 form.failed .wpcf7-response-output,

.wpcf7 form.aborted .wpcf7-response-output,

.wpcf7 form.spam .wpcf7-response-output,

.wpcf7 form.invalid .wpcf7-response-output,

.wpcf7 form.unaccepted .wpcf7-response-output,

.wpcf7 form.payment-required .wpcf7-response-output {

  display: none;

}





.contact-form-col-6 {

  display: flex;

  flex-direction: column;
  /* Stack input and error vertically */

  gap: 10px;
  /* Add spacing between input and error text */

  width: calc((100% - 20px) / 2);

  color: orange;

}



.contact-form-col-12 {

  display: flex;

  flex-direction: column;
  /* Stack input and error vertically */

  gap: 10px;
  /* Add spacing between input and error text */

  width: 100%;

  color: orange;

}

.icon-gallery {
  background-image: url("../images/gallery.svg");
}

.icon {
  margin-top: 8px;
  flex-shrink: 0;
  display: block;
  width: 30px;
  height: auto;
  aspect-ratio: 30 / 40;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
}

.mt-30 {
  margin-top: 30px !important;
}

a:has(i.icon) {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}

.overflow-hidden {
  overflow: hidden;
}

.display-none {
  display: none;
  /* Hide the swiper slides initially */
}

.swiper.swiper-gallery.active {
  display: flex;
  max-width: 100vw;
  /* Use flexbox to center content */
}

.swiper.swiper-gallery {
  position: fixed;
  z-index: 999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
  /* Use flexbox */
  justify-content: center;
  /* Center horizontally */
  align-items: center;
  /* Center vertically */
  overflow-x: hidden;
}

.swiper-slide.swiper-gallery-slide {
  display: flex;
  justify-content: center;
  align-items: center;

  img {
    max-width: 80vw;
    max-height: 60vh;
  }
}

.d-grid {
  display: grid;
  gap: 20px;
  justify-items: center;
  align-items: center;
}

.d-grid.grid-cols-1 {
  grid-template-columns: repeat(1, 1fr);
}

.swiper-gallery-description {
  text-align: center;
  width: 60%;
  color: #fff;
  position: absolute;
  bottom: 50px;
}
.swiper-button-close {
  position: absolute;
  top: 50px;
  right: 30px;
  width: auto;
  height: auto;
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}

.close-icon {
  position: relative; 
  width: 40px; /* Width of the icon */
  height: 40px; /* Height of the icon */
}
.close-icon::before,
.close-icon::after {
    content: ''; /* Create the lines for the X */
    cursor: pointer;
    position: absolute; 
    width: 2px; /* Line thickness */
    height: 40px; /* Length of the lines */
    background-color: white; /* Color of the lines */
    right: 20px;
}

.close-icon::before {
    transform: rotate(45deg); /* Diagonal line */
}

.close-icon::after {
    transform: rotate(-45deg); /* Diagonal line */
}
.section.swiper.swiper-gallery .swiper-button-next, 
.section.swiper.swiper-gallery .swiper-button-prev {
  color: #fff;
}
.section.swiper.swiper-gallery .swiper-button-next {
  right: 30px;
}
.section.swiper.swiper-gallery .swiper-button-prev {
  left: 30px;
}




@media (max-width: 1400px) {

  .sharings-quotes-section .quotes .quote-card h5 {

    margin-top: 2px;

  }

  .sharings-quotes-section .quotes .quote-card h3 {

    margin-top: 4px;

  }



  h3.large-mobile-h3 {

    font-weight: 500;

    font-size: 42px;

    line-height: 48px;

  }



  h5 {

    font-weight: 200 !important;

    font-size: 20px !important;

    line-height: 32px !important;

  }



  .sharings-quotes-section .quotes .quote-card p {

    margin-top: 28px;

  }

}

@media (max-width: 1400px) {

  .textarea-block {

    margin-top: 50px;

  }

  strong.bold-text {

    font-weight: 400;

    font-size: 26px;

    line-height: 34px;

  }



  p.large-text-spacing {

    font-size: 16px;

    line-height: 26px;

  }



  p.small-text-mobile {

    font-size: 16px;

  }



  h2 {

    margin-top: 0 !important;

    font-size: 26px !important;

    line-height: 34px !important;

    margin-bottom: 10px !important;

  }



  .strong-label {

    font-size: 16px;

    line-height: 32px !important;

    margin-bottom: -9px !important;

    letter-spacing: 1px;

  }



  .large-text-height-tablet {

    font-size: 16px;

    line-height: 30px;

  }

  .sharings-quotes-section .quotes .quote-card h5 {

    margin-top: 5px;

  }

  .sharings-quotes-section .quotes .quote-card h3 {

    margin-top: 2px;

    order: -1;

  }

  .sharings-quotes-section .quotes .quote-card p {

    margin-top: 5px;

  }



  .contact-form-col-6 {

    width: calc((100% - 10px) / 2);

  }

}



@media screen and (max-width: 870px) {

  .section.contactUs-form-section {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    gap: 20px;

  }



  .contactUs-form-section .contact-info {

    width: 100%;

  }

}



@media screen and (max-width: 768px) {

  strong.bold-text {

    font-size: 26px;

  }

  .section.contactUs-form-section {

    display: flex;

    gap: 50px;

  }



  p.large-text-spacing {

    font-size: 21px;

    line-height: 33px;

  }



  .strong-label {

    line-height: 30px !important;

  }



  .large-text-height-tablet {

    font-size: 21px;

    line-height: 33px;

  }

}