.elementor-19264 .elementor-element.elementor-element-65df138{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-19264 .elementor-element.elementor-element-afe03e1{text-align:center;width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-19264 .elementor-element.elementor-element-afe03e1 .elementor-heading-title{font-family:"Plus Jakarta Sans", Sans-serif;font-size:30px;font-weight:900;text-transform:capitalize;letter-spacing:0.5px;color:var( --e-global-color-20846a4 );}.elementor-19264 .elementor-element.elementor-element-afe03e1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-19264 .elementor-element.elementor-element-2164be7{--display:flex;}.elementor-19264 .elementor-element.elementor-element-2a0644d{--display:flex;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-19264 .elementor-element.elementor-element-65df138{--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-19264 .elementor-element.elementor-element-afe03e1 .elementor-heading-title{font-size:25px;}}/* Start custom CSS for html, class: .elementor-element-919b532 */.gallery-container {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.gallery-item {
  flex: 0 1 calc(33.333% - 20px);
  margin-bottom: 20px;


@media (max-width: 480px) {
  .gallery-item {
    flex: 0 1 100%; /* 1 item per row on mobile */
  }
}
.text-container h2 {
  font-size: clamp(12px, 2.5vw, 18px); /* Adjusts between 12px and 18px */
  white-space: nowrap; /* Keeps the text in a single line */
  overflow: hidden; /* Prevents the text from overflowing */
  text-overflow: ellipsis; /* Adds an ellipsis to text that overflows */
  margin-bottom: 10px;
}
.image-container {
  width: 100%;
  height: 0; /* Set height to 0 */
  padding-top: 56.25%; /* This percentage gives an aspect ratio of 16:9 */
  position: relative; /* Allows absolute positioning within */
  margin-bottom: 15px; /* Space below the image container */
}

.image-container img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.gallery-item {
  flex: 1 1 100%; /* Start with one item per row */
  max-width: 380px; /* Adjust this value based on your design preference */
}

/* Two items per row for screens wider than 400px and up to 768px */
@media (min-width: 401px) and (max-width: 768px) {
  .gallery-item {
    flex: 1 1 calc(50% - 20px); /* Subtracting the gap from the 50% */
  }
}

/* Three items per row for screens wider than 768px */
@media (min-width: 769px) {
  .gallery-item {
    flex: 1 1 calc(33.333% - 20px); /* Subtracting the gap from the 33.333% */
  }
}

  .text-container h2 {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    max-width: 100%;
    display: block;
    text-align: center;
    font-size: clamp(12px, 3vw, 15px); /* Smaller font size for medium devices */
  }
}

/* Small devices (less than 401px) - 1 item per row */
@media (max-width: 400px) {
  .gallery-item {
    flex: 0 1 100%;
  }
  .text-container h2 {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    max-width: 100%;
    display: block;
    text-align: left;
  }
}

/* Ensuring the image-container maintains aspect ratio */
.image-container {
  width: 100%;
  height: auto; /* Changed from 0 to auto */
  position: relative;
  margin-bottom: 15px;
}

.image-container img {
  width: 100%;
  height: auto; /* Maintain full image height */
  object-fit: cover;
}/* End custom CSS */