.technical-fundamentals-section { width: 100%; position: relative; text-align: center; overflow: hidden; }
.technical-fundamentals-section.overlap { margin-bottom: -300px; }
.technical-fundamentals-section .top_block { position: relative; width: 100%; margin-bottom: 70px; }
.technical-fundamentals-section .top_block .text-data { max-width: 800px; margin: 32px auto 0; }

.technical-fundamentals-section .sec_title { position: relative; width: 100%; text-align: center; }
.technical-fundamentals-section .sec_title h2 { color: #fff; }
.technical-fundamentals-section .swiper { overflow: visible; }
.fundamentals_blocks { position: relative; width: 100%; }
.fundamentals_blocks .swiper-slide { height: auto; }
.fundamentals_blocks .technical_card { position: relative; min-height: 395px; height: 100%; padding: 53px 40px 36px; background: #F0F0F0; border-radius: 10px; }
.fundamentals_blocks .technical_card h6 { margin-bottom: 37px; }


.technical-fundamentals-section.grid-layout { margin-bottom: -300px; }
.technical-fundamentals-section.grid-layout .fundamental_carousel { display: none; }
.technical-fundamentals-section:not(.grid-layout) .fundamentals_grid { display: none; }
.technical-fundamentals-section.grid-layout .technical_card { min-height: 318px; }

/* Mobile Styles (Swiper is active) */
.fundamentals_grid {
  width: 100%;
  padding-bottom: 40px;
}


@media (min-width: 1280px) {
    .fundamentals_blocks .swiper-wrapper { flex-wrap: wrap; gap: 16px; justify-content: center; }
    .fundamentals_blocks .swiper-slide { flex: 0 0 396px; height: auto; }
    .fundamentals_blocks .swiper-slide:nth-child(even) { margin-top: 90px; }
    .fundamentals_blocks .technical_card { width: 100%; height: auto; }
    .fundamental-pagination { display: none; }

    .fundamentals_grid {
    overflow: visible;
  }

  .technical-fundamentals-section.grid-layout { margin-bottom: -530px; }
  .fundamentals_grid .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(6, auto);
    gap: 16px;
    
    transform: none !important;
    width: 100% !important;
    height: auto !important;
  }

  .fundamentals_grid .swiper-slide {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
  }

  .fundamental-pagination {
    display: none !important;
  }

  .fundamentals_grid .swiper-slide:nth-child(1) {
    grid-column: 1;
    grid-row: 2 / 4; 
  }

  .fundamentals_grid .swiper-slide:nth-child(2) {
    grid-column: 1;
    grid-row: 4 / 6;
  }

  .fundamentals_grid .swiper-slide:nth-child(3) {
    grid-column: 2;
    grid-row: 1 / 3;
  }

  .fundamentals_grid .swiper-slide:nth-child(4) {
    grid-column: 2;
    grid-row: 3 / 5;
  }

  .fundamentals_grid .swiper-slide:nth-child(5) {
    grid-column: 2;
    grid-row: 5 / 7;
  }

  .fundamentals_grid .swiper-slide:nth-child(6) {
    grid-column: 3;
    grid-row: 2 / 4;
  }
  
  .fundamentals_grid .swiper-slide:nth-child(7) {
    grid-column: 3;
    grid-row: 4 / 6;
  }
}

@media (min-width: 1600px) and (max-width: 1800px) {

  .technical-fundamentals-section:not(.grid-layout) .fundamentals_blocks .swiper-slide { flex: 0 0 330px; }

}

@media (min-width: 1400px) and (max-width: 1599px) {
  
  .technical-fundamentals-section:not(.grid-layout) .fundamentals_blocks .swiper-slide { flex: 0 0 289px; }
  .fundamentals_blocks .technical_card { padding: 60px 30px 35px; }
  .technical-fundamentals-section .image_wrap { height: 650px; }
}

@media (min-width: 1280px) and (max-width: 1399px) {

  .technical-fundamentals-section:not(.grid-layout) .fundamentals_blocks .swiper-slide { flex: 0 0 230px; }

}

@media (min-width: 1200px) and (max-width: 1399px) {
  
  .fundamentals_blocks .technical_card { padding: 40px 20px 35px; }
    
}

@media (min-width: 992px) and (max-width: 1199px) {
    .fundamentals_blocks .technical_card { min-height: 300px; }
}

@media (min-width: 768px) and (max-width: 991px) {
    .fundamentals_blocks .technical_card { min-height: 300px; }
}

@media (max-width: 1279px) {

    .technical-fundamentals-section .swiper { overflow: visible; }
    .technical-fundamentals-section .fundamental-pagination { position: relative; display: flex; margin-top: 37px; gap: 11px; justify-content: center; align-items: center; }
    .technical-fundamentals-section .fundamental-pagination span[class*="swiper-pagination-bullet"] { display: flex; width: 19px; height: 19px; margin: 0; background: #F0F0F0; opacity: 50%; cursor: pointer; border-radius: 4px; }
    .technical-fundamentals-section .fundamental-pagination span[class*="swiper-pagination-bullet-active"] { width: 26px; height: 26px; background: #fff; opacity: 1; }


}

@media (max-width: 767px) {
    .technical-fundamentals-section .container { max-width: 100%; padding: 0 0; }
    .technical-fundamentals-section .top_block { max-width: 540px; margin: 0 auto 50px; padding: 0 32px; }
    .technical-fundamentals-section .swiper { padding: 0; }
    .fundamentals_blocks .technical_card { padding: 30px 30px 35px; min-height: 250px; }
    .fundamentals_blocks .technical_card .card_heading { flex-direction: row; min-height: 56px; text-align: left}
    .fundamentals_blocks .technical_card .icon { position: absolute; right: 100%; margin-right: 20px; width: 45px; height: 56px; margin-bottom: 0; }
    .fundamentals_blocks .technical_card .text-data { text-align: left; }
    .technical-fundamentals-section .text-data { margin-top: 11px; }
}
