body {
    font-family: "Be Vietnam Pro", sans-serif !important;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
  }
  
/* Bootstrap 5.3 Ratio Helper (for BS 5.1 compatibility) */
a{
    text-decoration: none !important;
}
.bg-gradient1{
    background: linear-gradient(90deg, var(--c1), var(--c2) 51%, var(--c1)) var(--x, 0) / 200%;
}
.wrap-ho-so-nang-luc {
    padding: 52px 0 84px;
    overflow: hidden;
}

.ho-so-nang-luc-shell {
    position: relative;
    padding: 0 24px;
}

.ho-so-nang-luc-carousel,
.ho-so-nang-luc-carousel .slick-list,
.ho-so-nang-luc-carousel .slick-track {
    position: relative;
}

.ho-so-nang-luc-carousel .slick-list {
    overflow: visible;
}

.ho-so-nang-luc-slide-item {
    padding: 0;
}

.ho-so-nang-luc-showcase {
    --c1: #03a655;
    --c2: #08b8e8;
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.ho-so-nang-luc-copy,
.ho-so-nang-luc-visual {
    position: relative;
}

.ho-so-nang-luc-copy {
    z-index: 1;
    flex: 0 0 60%;
    max-width: 60%;
    padding-top: 50px;
}

.ho-so-nang-luc-copy-box {
    position: relative;
    min-height: 360px;
    padding: 35px 50px 35px 30px;
    background: #fff;
    border: 4px solid #98e4ca;
    box-shadow: 0 24px 50px rgba(24, 62, 95, 0.08);
    margin-right: -10px;
}

.ho-so-nang-luc-copy-box::before {
    content: "";
    position: absolute;
    inset: 18px;
    /* border: 1px solid rgba(8, 184, 232, 0.12); */
    pointer-events: none;
}

.ho-so-nang-luc-lead,
.ho-so-nang-luc-lead p {
    font-family: 'Oswald', sans-serif;
    color: #37439f;
}

.ho-so-nang-luc-lead {
    position: relative;
    z-index: 1;
    /* max-width: 500px; */
    margin-bottom: 35px;
    font-size: clamp(24px, 2.2vw, 34px);
    line-height: 1.62;
    font-weight: 600;
    font-size: 30px;
}

.ho-so-nang-luc-lead p {
    margin-bottom: 12px;
    font-size: inherit;
    line-height: inherit;
    font-weight: inherit;
}

.ho-so-nang-luc-lead > *:last-child {
    margin-bottom: 0;
}

.ho-so-nang-luc-badge {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 10px 18px;
    color: #fff;
    font-family: 'Oswald', sans-serif;
    font-size: clamp(18px, 1.4vw, 25px);
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
    text-decoration: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.ho-so-nang-luc-badge:hover,
.ho-so-nang-luc-footer:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(8, 184, 232, 0.2);
}

.ho-so-nang-luc-visual {
    z-index: 3;
    flex: 0 0 47%;
    max-width: 47%;
}

.ho-so-nang-luc-media {
    position: relative;
    overflow: hidden;
    background: #e8eef5;
    aspect-ratio: 576 / 424;
    box-shadow: 0 24px 50px rgba(24, 62, 95, 0.12);
}

.ho-so-nang-luc-slider,
.ho-so-nang-luc-slider .slick-list,
.ho-so-nang-luc-slider .slick-track,
.ho-so-nang-luc-slide,
.ho-so-nang-luc-image {
    height: 100%;
}

.ho-so-nang-luc-image,
.ho-so-nang-luc-image img {
    display: block;
    width: 100%;
}

.ho-so-nang-luc-image img {
    height: 100%;
    object-fit: cover;
}

.ho-so-nang-luc-footer {
    position: relative;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 50px;
    margin-top: 0;
    padding: 17px 26px;
    padding-top: 17px;
    color: #fff;
    font-family: 'Be Vietnam Pro';
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    text-decoration: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.ho-so-nang-luc-footer i {
    flex-shrink: 0;
    font-size: 0.78em;
}

.ho-so-nang-luc-nav {
    position: absolute;
    top: 50%;
    z-index: 5;
    width: 38px;
    height: 38px;
    border: 2px solid #08b8e8;
    border-radius: 50%;
    background: #fff;
    color: #08b8e8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;
}

.ho-so-nang-luc-nav:hover {
    background: #08b8e8;
    color: #fff;
}

.ho-so-nang-luc-prev {
    left: -45px;
    transform: translateY(-50%);
}

.ho-so-nang-luc-next {
    right: -45px;
    transform: translateY(-50%);
}

@media (max-width: 1199px) {
    .ho-so-nang-luc-showcase {
        gap: 0;
    }

    .ho-so-nang-luc-copy {
        flex-basis: 58%;
        max-width: 58%;
    }

    .ho-so-nang-luc-copy-box {
        margin-right: -94px;
        padding-right: 170px;
    }

    .ho-so-nang-luc-visual {
        flex-basis: 48%;
        max-width: 48%;
    }
}

@media (max-width: 991px) {
    .wrap-ho-so-nang-luc {
        padding: 40px 0 56px;
    }

    .ho-so-nang-luc-shell {
        padding: 0 14px;
    }

    .ho-so-nang-luc-showcase {
        display: block;
        gap: 28px;
    }

    .ho-so-nang-luc-copy {
        max-width: 100%;
        padding: 0;
        flex-basis: auto;
    }

    .ho-so-nang-luc-visual {
        max-width: 100%;
        margin-top: 22px;
        flex-basis: auto;
    }

    .ho-so-nang-luc-copy,
    .ho-so-nang-luc-visual {
        position: relative;
    }

    .ho-so-nang-luc-copy-box {
        min-height: unset;
        margin-right: 0;
        padding: 40px 32px;
    }

    .ho-so-nang-luc-lead {
        max-width: 100%;
    }

    .ho-so-nang-luc-media {
        aspect-ratio: 16 / 11;
    }

    .ho-so-nang-luc-prev,
    .ho-so-nang-luc-next {
        top: calc(50% - 32px);
        bottom: auto;
        transform: translateY(-50%);
    }

    .ho-so-nang-luc-prev {
        left: 12px;
    }

    .ho-so-nang-luc-next {
        right: 12px;
    }
}

@media (max-width: 767px) {
    .wrap-ho-so-nang-luc {
        padding: 34px 0 50px;
    }

    .ho-so-nang-luc-copy-box {
        padding: 30px 20px;
        border-width: 3px;
    }

    .ho-so-nang-luc-copy-box::before {
        inset: 12px;
    }

    .ho-so-nang-luc-lead {
        margin-bottom: 22px;
        font-size: 22px;
        line-height: 1.55;
    }

    .ho-so-nang-luc-footer {
        min-height: 58px;
        padding: 14px 18px;
        font-size: 22px;
    }

    .ho-so-nang-luc-prev,
    .ho-so-nang-luc-next {
        width: 40px;
        height: 40px;
        font-size: 14px;
    }
}

@media (max-width: 575px) {
    .ho-so-nang-luc-showcase {
        gap: 18px;
    }

    .ho-so-nang-luc-shell {
        padding: 0 8px;
    }

    .ho-so-nang-luc-copy-box {
        padding: 24px 16px;
    }

    .ho-so-nang-luc-lead {
        font-size: 20px;
    }

    .ho-so-nang-luc-badge {
        min-height: 42px;
        padding: 9px 14px;
        font-size: 16px;
    }

    .ho-so-nang-luc-footer {
        font-size: 16px;
        padding: 12px 18px;
        min-height: auto;
    }

    .ho-so-nang-luc-prev {
        left: 8px;
    }

    .ho-so-nang-luc-next {
        right: 8px;
    }
}
.ratio img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  .ratio {
    position: relative;
    width: 100%;
  }
  
  .ratio::before {
    display: block;
    padding-top: var(--bs-aspect-ratio);
    content: "";
  }
  
  .ratio > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  
  /* Common aspect ratios */
  .ratio-1x1 {
    --bs-aspect-ratio: 100%;
  }
  
  .ratio-4x3 {
    --bs-aspect-ratio: calc(3 / 4 * 100%);
  }
  
  .ratio-16x9 {
    --bs-aspect-ratio: calc(9 / 16 * 100%);
  }
  
  .ratio-21x9 {
    --bs-aspect-ratio: calc(9 / 21 * 100%);
  }
  /* Swiper Service Styles */
  
  .wrap-service {
    /* background: #eafcff; */
  }
  .swiper-service {
    width: 100%;
    padding: 60px 80px 80px; /* Add horizontal padding for buttons */
    position: relative;
  }
  
  .swiper-service .swiper-slide {
    width: 370px;
    transition: all 0.3s ease;
    /* opacity: 0.5; */
  }
  
  .swiper-service .swiper-slide-active {
    opacity: 1;
    /* transform: scale(1.1); */
  }
  /* .swiper-service .item-service:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(
      0deg,
      rgba(0, 0, 0, 0.69) 21.51%,
      rgba(0, 0, 0, 0) 100%
    );

    opacity: 0.7;
  } */
  .swiper-service .item-service {
    margin-bottom: 40px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    position: relative;
  }
  
  .swiper-service .item-service .images {
    position: relative;
    overflow: hidden;
  }
  
  .swiper-service .item-service .images img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .swiper-service .item-service .content a{color:#fff;}
.swiper-service .item-service .content p:first-child{
    display: flex;
    justify-content: center;
    align-items: center;
}
  .swiper-service .item-service .content p{margin-bottom:5px;overflow: hidden;text-overflow: ellipsis;white-space: normal;-webkit-box-orient: vertical;display: -webkit-box;-webkit-line-clamp: 2;margin: 0;/* background: red; *//* display: flex; *//* justify-content: center; *//* align-items: center; */}
  .swiper-service .item-service .content {
    padding: 20px;
    /* position: absolute; */
    bottom: 0;
    width: 100%;
    z-index: 2;
  }
  
  .swiper-service .item-service .content h3 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #fff;
  }
  
  .swiper-service .item-service .content h3 a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
  }
  
  .swiper-service .item-service .content h3 a:hover {
    color: #3498db;
  }
  
  /* Hide description for non-active slides */
  .swiper-service .swiper-slide:not(.swiper-slide-active) .desc-service,
  .swiper-service .swiper-slide:not(.swiper-slide-active) .btn-readmore {
    /* display: none; */
  }
  
  .swiper-service .desc-service {
    font-size: 14px;
    color: #333;
    margin-bottom: 15px;
    line-height: 1.6;
    height: 45px;
  }
  
  .swiper-service .btn-readmore {
    display: inline-block;
    padding: 8px 20px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #fff;
    text-decoration: none;
    border-radius: 25px;
    font-size: 14px;
    font-weight: 600;
    transition: all 0.3s ease;
  }
  
  .swiper-service .btn-readmore:hover {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(102, 126, 234, 0.4);
  }
   .wrap-product .swiper-button-prev,
  .wrap-product .swiper-button-next {
top: 50% !important;
  }
  /* Navigation Buttons */
  .wrap-content .swiper-button-prev,
  .wrap-content .swiper-button-next {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    position: absolute;
    top: 60%;
    transform: translateY(-50%);
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    --c1: #00c6ff;
    --c2: #03a655;
    --bw: 2px;
    border: var(--bw) solid transparent;
    background: linear-gradient(#eafcff, #eafcff) padding-box,
      linear-gradient(90deg, var(--c1), var(--c2) 51%, var(--c1)) var(--x, 0) /
        200% border-box;
    border-radius: 50%;
  }
  
  /* Gradient border effect using pseudo-element */
  .wrap-content .swiper-button-prev::before,
  .wrap-content .swiper-button-next::before {
    content: "";
    position: absolute;
    inset: -3px;
    border-radius: 50%;
    padding: 3px;
    /* background: linear-gradient(135deg, #00d4ff 0%, #0099cc 100%); */
    /* -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); */
    /* -webkit-mask-composite: xor; */
    /* mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); */
    mask-composite: exclude;
    pointer-events: none;
  }
  
  .wrap-content .swiper-button-prev {
    left: -70px;
  }
  
  .wrap-content .swiper-button-next {
    right: -70px;
  }
  .wrap-history .title-main{
    text-align: left;
    background-position: left bottom;
}
  .wrap-history .title-main .text-light{text-align: left;}
  .wrap-content .swiper-button-prev:after,
  .wrap-content .swiper-button-next:after {
    font-size: 18px;
    font-weight: bold;
    color: #00a8cc;
  }
  .timeline-section {
    position: relative;
    /* padding: 50px 0; */
    overflow: visible;
  }
  
  .timeline-svg {
    overflow: visible !important;
  }
  
  .wrap-history {
    overflow: visible;
  }
  
  .wrap-history .wrap-content {
    overflow: visible;
  }
  
  .timeline-items-container {
    position: absolute;
    inset: 0;
    pointer-events: none;
  }
  
  .timeline-item {
    position: absolute;
    color:#fff;
    pointer-events: auto;
  }
  
  /* Item */
  .timeline-item {
    position: absolute;
    transform: translate(-50%, -100%);
    text-align: center;
    width: 160px;
    padding: 0 10px;
  }
  
  .timeline-item .icon {
    margin-bottom: 8px;
  }
  
  .timeline-item .icon img {
    width: 42px;
    height: 42px;
  }
  
  .timeline-item h4 {
    margin: 0;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.4px;
  }
  
  .timeline-item p {
    margin: 6px 0 0;
    font-size: 10.8px;
    line-height: 1.45;
    opacity: 0.75;
  }
  
  /* Stem */
.timeline-item .stem:after{content:"";width: 12px;height: 8px;background: #fff;position: absolute;top: -6px;left: -5px;}
  .timeline-item .stem {
    width: 2px;
    height: 48px;
    background: #ffffff;
    margin: 14px auto 0;
    position: relative;
  }
  
  /* Dot */
.timeline-item .dot:after{content:"";position: absolute;width: calc(100% + 6px);height: calc(100% + 6px);background: linear-gradient(90deg, var(--c1), var(--c2) 51%, var(--c1)) var(--x, 0) / 200%;border-radius: 50%;left: -3px;top: -3px;}
.timeline-item .dot:before{content:"";position: absolute;background: linear-gradient(316deg, #E0DEDE 24%, #FFFFFF 76%);width: 100%;height: 100%;top: 0;left: 0;z-index: 2;border-radius: 50%;}
  .timeline-item .dot {
    width: 18px;
    height: 18px;
    background: #00ffd0;
    border-radius: 50%;
    margin: 0 auto;
    background: linear-gradient(316deg, #E0DEDE 24%, #FFFFFF 76%);
    position: relative;
  }
  .timeline-item .dot span{
    background: linear-gradient(316deg, #E0DEDE 24%, #FFFFFF 76%);
    position: relative;
    display: inline-block;
    width: calc(100% + 8px);
    height: calc(100% + 8px);
    border-radius: 50%;
    left: -4px;
}
  /* Year */
  .timeline-item .year {
    margin-top: 10px;
    display: inline-block;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 1px;
    white-space: nowrap;
    margin-top: 30px;
    background: linear-gradient(90deg, var(--c1), var(--c2) 51%, var(--c1)) var(--x, 0) / 200%;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 1px;
  }
  
  /* Responsive adjustments */
  @media (max-width: 768px) {
    .swiper-service {
      padding: 60px 50px 80px;
    }
    
  
    .swiper-service .swiper-slide {
      width: 300px;
    }
  
    .swiper-service .swiper-slide-active {
      transform: scale(1.05);
    }
  
    .wrap-content .swiper-button-prev,
    .wrap-content .swiper-button-next {
      width: 45px;
      height: 45px;
      left: 0;
    }
    .wrap-content .swiper-button-next{left:auto;right:0}
  
    .wrap-content .swiper-button-prev:after,
    .wrap-content .swiper-button-next:after {
      font-size: 14px;
    }
  }
  
  @media (max-width: 576px) {
    .wrap-content {
      padding: 10px 20px 20px;
    }
  
    .wrap-content .swiper-button-prev,
    .wrap-content .swiper-button-next {
      width: 40px;
      height: 40px;
    }
  }
  
  /* Feedback Swiper */
  .wrap-feedback {
    padding: 50px 0;
    background: #fff;
  }
  .swiper-feedback {
    padding: 20px 0 50px;
    overflow: hidden;
    position: relative;
  }
  .item-feedback:hover{
    color:#fff;
  }
  .item-feedback {
    padding: 10px;
  }
  .feedback-card {
    background: #f5f5f5;
    padding: 30px;
    border-radius: 10px;
    position: relative;
    margin-bottom: 20px;
    /* transition: all 0.3s ease; */
  }
  .feedback-card::after {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50px;
    transform: translateX(-50%) rotate(45deg);
    width: 16px;
    height: 16px;
    background: #f5f5f5;
    transition: all 0.3s ease;
    transition: 0.4s ease;
    z-index: 1;
  }
  .item-feedback .feedback-card:before {
    content: "";
    background: linear-gradient(90deg, #03a655 0%, #00aeee 100%);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 10px;
    opacity: 0;
    z-index: 2;
    /* transition: 0.3s ease; */
  }
  .item-feedback:hover .feedback-card:before {
    opacity: 1;
  }
  .item-feedback:hover .feedback-card::after {
    background: linear-gradient(90deg, #03a655 0%, #00aeee 100%);
  }
  .feedback-card .stars {
    color: #f1c40f;
    margin-bottom: 15px;
    position: relative;
    z-index: 3;
  }
  .feedback-card .desc {
    font-size: 15px;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 0;
    position: relative;
    z-index: 3;
  }
  .customer-info {
    display: flex;
    align-items: center;
    /* justify-content: center; */
    gap: 15px;
    padding-left: 23px;
  }
  .customer-info .avatar img {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    object-fit: cover;
  }
  .customer-info .info {
    text-align: left;
  }
  .customer-info .info h3 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 5px;
    color: #333;
    text-transform: capitalize;
  }
  .customer-info .info p {
    font-size: 14px;
    color: #666;
    margin-bottom: 0;
  }
  /* Swiper Pagination */
  .swiper-feedback .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #ccc;
    opacity: 1;
    margin: 0 5px;
  }
  .swiper-feedback .swiper-pagination-bullet-active {
    background: #00b09b;
  }
  /* Swiper Navigation */
  .swiper-feedback .swiper-button-next,
  .swiper-feedback .swiper-button-prev {
    color: #00b09b;
    background: #fff;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  }
  .swiper-feedback .swiper-button-next::after,
  .swiper-feedback .swiper-button-prev::after {
    font-size: 20px;
    font-weight: bold;
  }
  
  /* Factory Tabs Styles */
  .wrap-image {
  padding: 40px 0;
  }
  
  .factory-tabs-wrapper {
      margin-bottom: 10px;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
  }
  
  .factory-tabs-wrapper::-webkit-scrollbar {
      height: 6px;
  }
  
  .factory-tabs-wrapper::-webkit-scrollbar-track {
      background: #f1f1f1;
      border-radius: 10px;
  }
  
  .factory-tabs-wrapper::-webkit-scrollbar-thumb {
      background: #888;
      border-radius: 10px;
  }
  
  .factory-tabs-wrapper::-webkit-scrollbar-thumb:hover {
      background: #555;
  }
  
  .factory-tabs {
      display: flex;
      gap: 15px;
      min-width: max-content;
      padding-bottom: 10px;
      justify-content: center;
  }
  
  .factory-tab {
      padding: 12px 30px;
      border: 1px solid #ddd;
      background: #fff;
      color: #333;
      font-size: 14px;
      font-weight: 600;
      text-transform: uppercase;
      border-radius: 8px;
      cursor: pointer;
      transition: all 0.3s ease;
      white-space: nowrap;
      flex-shrink: 0;
  }
  
  .factory-tab:hover {
      border-color: #03A655;
      color: #03A655;
  }
  
  .factory-tab.active {
      background: linear-gradient(90deg, #03A655 0%, #00AEEE 100%);
      color: #fff;
      border-color: transparent;
  }
  
  .factory-tab-content {
      display: none;
      animation: fadeIn 0.5s ease;
      margin-bottom: 30px;
      text-align: center;
  }
  
  .factory-tab-content.active {
      display: block;
  }
  
  @keyframes fadeIn {
      from {
          opacity: 0;
          transform: translateY(10px);
      }
      to {
          opacity: 1;
          transform: translateY(0);
      }
  }
  
  
  
  .factory-images {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
      gap: 20px;
  }
  
  .factory-image-item {
      border-radius: 8px;
      overflow: hidden;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
  
  .factory-image-item:hover {
      transform: translateY(-5px);
      box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
  }
  
  .factory-image-item img {
      width: 100%;
      height: 250px;
      object-fit: cover;
      display: block;
  }
  
  
  /* Thumbnail Columns */
  .thumbnail-column {
      display: flex;
      flex-direction: column;
      /* gap: 15px; */
      height: 100%;
      justify-content: center;
  }
  
  .left-thumbnails {
      align-items: flex-end;
  }
  
  .right-thumbnails {
      align-items: flex-start;
  }
  
  /* Thumbnail Items */
  .thumbnail-item {
      width: 100%;
      border-radius: 10px;
      overflow: hidden;
      box-shadow: 0 5px 15px rgba(0,0,0,0.1);
      transition: all 0.3s ease;
      cursor: pointer;
      background: #FFFFFF;
  }
  
  .thumbnail-item:hover {
      transform: translateY(-5px);
      box-shadow: 0 10px 25px rgba(0,0,0,0.15);
  }
  
  .thumbnail-item img {
      width: 100%;
      height: 120px;
      object-fit: cover;
      transition: all 0.3s ease;
      height: 100% !important;
  }
  
  .thumbnail-item:hover img {
      transform: scale(1.05);
  }
  
  .thumbnail-item.active {
      border: 3px solid #e91e63;
      transform: translateY(-5px);
  }
  
  .thumbnail-item.active img {
      transform: scale(1.05);
  }
  #block-success-stories .ratio.ratio-gallery {
      aspect-ratio: 388 / 298;
      margin-bottom: 1rem;
  }
  .g-2, .gy-2 {
      --bs-gutter-y: 0.5rem;
  }
  
  .g-2, .gx-2 {
      --bs-gutter-x: 0.5rem;
  }
  
  
  /* Responsive */
  @media (max-width: 768px) {
      .factory-tabs {
          gap: 10px;
      }
  .wrap-feedback{padding:10px 0}
      .factory-tab {
          padding: 10px 20px;
          font-size: 13px;
      }
  
      .factory-images {
          grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
          gap: 15px;
      }
  
      .factory-image-item img {
          height: 200px;
      }
  
      .factory-address {
          font-size: 14px;
          padding: 12px 15px;
      }
  }
  
  @media (max-width: 480px) {
      .factory-images {
          grid-template-columns: 1fr;
      }
  
      .factory-tab {
          padding: 8px 16px;
          font-size: 12px;
      }
  }
  
  /* Consultation Form Styles */
  .wrap-form {
      /* padding: 60px 0; */
      /* background: #f8f9fa; */
      margin-bottom: 30px;
  }
  
  .form-container {
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 20px;
      display: flex;
      gap: 40px;
      background: #ffffff;
      border-radius: 16px;
      padding: 30px;
      position: relative;
      background: #fff;
      box-shadow: var(--bs-box-shadow) !important;
  }
  
  /* Gradient Border Effect */
  .form-container::before {
      content: "";
      position: absolute;
      top: -5px;
      left: -5px;
      right: -5px;
      bottom: -5px;
      border-radius: 21px;
      padding: 5px;
      background: linear-gradient(90deg, #03a655 0%, #00aeee 100%);
      -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
      -webkit-mask-composite: xor;
      mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
      mask-composite: exclude;
      z-index: -1;
      pointer-events: none;
      box-shadow: var(--bs-box-shadow) !important;
  }
  .ratio img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
  .form-left {
      position: relative;
      overflow: hidden;
      border-radius: 12px;
      flex: 0 0 57%;
  }
  
  .factory-image-wrapper {
      width: 100%;
      height: 100%;
      min-height: 500px;
      position: relative;
  }
  
  .factory-main-image {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 12px;
  }
  
  .factory-placeholder {
      width: 100%;
      height: 100%;
      min-height: 500px;
      background: #e0e0e0;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #999;
      font-size: 18px;
      border-radius: 12px;
  }
  
  .form-right {
      display: flex;
      align-items: center;
      padding: 0 20px;
  }
  
  .form-content {
      width: 100%;
      padding: 20px 0;
  }
  
  .form-title {
      font-size: 28px;
      color: #1a1a1a;
      margin-bottom: 15px;
      line-height: 1.3;
      font-size: 33px;
      position: relative;
      color: var(--main-color);
      font-family: 'Oswald', sans-serif;
      letter-spacing: 2px;
  }
  
  .form-description {
      font-size: 15px;
      color: #666;
      line-height: 1.6;
      margin-bottom: 30px;
  }
  
  .consultation-form {
      width: 100%;
  }
  
  .consultation-form .form-group {
      margin-bottom: 20px;
  }
  
  .consultation-form .form-row-group {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 15px;
      margin-bottom: 20px;
  }
  
  .consultation-form .half-width {
      margin-bottom: 0;
  }
  
  .consultation-form .form-control {
      width: 100%;
      padding: 14px 18px;
      font-size: 15px;
      color: #333;
      background-color: #ffffff;
      border: 1px solid #ddd;
      border-radius: 8px;
      transition: all 0.3s ease;
      outline: none;
  }
  
  .consultation-form .form-control::placeholder {
      color: #999;
  }
  
  .consultation-form .form-control:focus {
      border-color: #03a655;
      box-shadow: 0 0 0 3px rgba(3, 166, 85, 0.1);
  }
  
  .consultation-form .form-control.is-invalid {
      border-color: #dc3545;
  }
  
  .consultation-form .form-control.is-invalid:focus {
      border-color: #dc3545;
      box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.1);
  }
  
  .consultation-form textarea.form-control {
      resize: vertical;
      min-height: 59px;
  }
  
  .consultation-form .invalid-feedback {
      display: none;
      width: 100%;
      margin-top: 8px;
      font-size: 13px;
      color: #dc3545;
  }
  
  .consultation-form .form-control.is-invalid ~ .invalid-feedback {
      display: block;
  }
  
  .consultation-form.was-validated .form-control:invalid ~ .invalid-feedback {
      display: block;
  }
  
  .btn-submit {
      width: 100%;
      padding: 16px 30px;
      font-size: 16px;
      font-weight: 600;
      color: #ffffff;
      border: none;
      border-radius: 8px;
      cursor: pointer;
      transition: all 0.3s ease;
      position: relative;
      overflow: hidden;
      background: var(--color-gradient-1);
      margin-top: 10px;
  }
  
  .btn-submit:hover:not(:disabled) {
      transform: translateY(-2px);
      box-shadow: 0 8px 20px rgba(3, 166, 85, 0.3);
  }
  
  .btn-submit:active:not(:disabled) {
      transform: translateY(0);
  }
  
  .btn-submit:disabled {
      opacity: 0.6;
      cursor: not-allowed;
  }
  
  .btn-submit span {
      position: relative;
      z-index: 1;
  }
  
  /* Responsive */
  @media (max-width: 992px) {
      .form-container {
          grid-template-columns: 1fr;
          gap: 30px;
          padding: 25px;
      }
  
      .factory-image-wrapper {
          min-height: 400px;
      }
  
      .form-title {
          font-size: 24px;
      }
  
      .form-description {
          font-size: 14px;
      }
  }
  
  @media (max-width: 768px) {
      .wrap-form {
          padding: 40px 0;
      }
  
      .form-container {
          padding: 20px;
          gap: 25px;
          margin: 0 15px;
      }
  
      .factory-image-wrapper {
          min-height: 300px;
      }
  
      .form-title {
          font-size: 22px;
          margin-bottom: 12px;
      }
  
      .form-description {
          font-size: 13px;
          margin-bottom: 25px;
      }
  
      .consultation-form .form-row-group {
          grid-template-columns: 1fr;
          gap: 0;
          margin-bottom: 0;
      }
  
      .consultation-form .half-width {
          margin-bottom: 20px;
      }
  
      .consultation-form .form-control {
          padding: 12px 16px;
          font-size: 14px;
      }
  
      .btn-submit {
          padding: 14px 25px;
          font-size: 15px;
      }
  }
  
  @media (max-width: 480px) {
      .wrap-form {
          padding: 30px 0;
      }
  
      .form-container {
          padding: 15px;
          margin: 0 10px;
          border-radius: 12px;
      }
  
      .form-container::before {
          border-radius: 12px;
      }
  
      .factory-image-wrapper {
          min-height: 250px;
      }
  
      .form-title {
          font-size: 20px;
      }
  
      .consultation-form .form-control {
          padding: 11px 14px;
      }
  }
  
  /* Footer New Design Styles */
  .footer-main-content {
      /* background: linear-gradient(135deg, #00b09b 0%, #0099cc 100%); */
      padding: 40px 30px;
      border-radius: 0;
  }
  
  /* Footer Left Column - Company Info */
  .footer-left-column {
      padding-right: 30px;
  }
  
  .footer-company-info {
      color: #fff;
  }
  
  .footer-logo {
      margin-bottom: 20px;
  }
  
  .footer-logo-image {
      /* max-width: 200px; */
      height: auto;
  }
  
  .footer-company-name {
      font-size: 22px;
      color: #fff;
      margin-bottom: 25px;
      line-height: 1.4;
      text-transform: uppercase;
      font-family: 'Oswald', sans-serif;
      font-weight: 400;
  }
  
  .footer-contact-list {
      list-style: none;
      padding: 0;
      margin: 0;
  }
  
  .footer-contact-item {
      display: flex;
      align-items: flex-start;
      margin-bottom: 15px;
      font-size: 15px;
      line-height: 1.6;
      color: #fff;
  }
  
  .footer-icon {
      width: 20px;
      height: 20px;
      margin-right: 12px;
      margin-top: 2px;
      flex-shrink: 0;
      filter: brightness(0) invert(1);
  }
  
  .footer-contact-item span {
      flex: 1;
      word-break: break-word;
  }
  
  /* Footer Middle Column - Factories & Certifications */
  .footer-middle-column {
      padding: 0 20px;
  }
  
  .footer-factories {
      margin-bottom: 30px;
  }
  
  .factory-info-section {
      margin-bottom: 25px;
  }
  
  .factory-title {
      font-size: 18px;
      font-weight: 400;
      color: #fff;
      margin-bottom: 8px;
      text-transform: uppercase;
      font-family: 'Oswald', sans-serif;
  }
  
  .factory-address {
      font-size: 14px;
      /* color: #fff; */
      line-height: 1.6;
      margin: 0;
  }
  
  .footer-certifications {
      gap: 15px;
      align-items: center;
      flex-wrap: wrap;
  }
  
  .cert-item {
      flex: 0 0 auto;
  }
  
  .cert-image {
      height: auto;
      display: block;
  }
  
  /* Footer Right Column - Map & Social */
  .footer-right-column {
      padding-left: 30px;
  }
  
  .footer-map-section {
      margin-bottom: 30px;
  }
  
  .map-title {
      font-size: 18px;
      font-weight: 400;
      color: #fff;
      margin-bottom: 15px;
      text-transform: uppercase;
      text-transform: uppercase;
      font-family: 'Oswald', sans-serif;
  }
  
  .footer-map-container {
      width: 100%;
      border-radius: 8px;
      overflow: hidden;
      background: #fff;
  }
  
  .footer-map-container .iframe-map {
      width: 100%;
      height: 100%;
      display: block !important;
  }
  
  .footer-map-container .iframe-map iframe {
      width: 100%;
      height: 100%;
      border: 0;
      display: block;
  }
  
  .footer-social-section {
      color: #fff;
  }
  
  .social-title {
      font-size: 16px;
      font-weight: 400;
      color: #fff;
      margin-bottom: 15px;
      text-transform: uppercase;
      font-family: 'Oswald', sans-serif;
  }
  
  .footer-social-icons {
      display: flex;
      gap: 5px;
      margin-bottom: 20px;
      flex-wrap: wrap;
  }
  
  .social-icon-link {
      display: inline-block;
      width: 50px;
      height: 50px;
      border-radius: 50%;
      overflow: hidden;
      background: rgba(255, 255, 255, 0.2);
      transition: all 0.3s ease;
  }
  
  .social-icon-link:hover {
      background: rgba(255, 255, 255, 0.3);
      transform: translateY(-3px);
  }
  
  .social-icon {
      width: 100%;
      height: 100%;
      object-fit: cover;
  }
  
  .footer-qr-codes {
      display: flex;
      gap: 15px;
      flex-wrap: wrap;
  }
  
  .qr-item {
      flex: 0 0 calc(33.333% - 10px);
      max-width: 100px;
  }
  
  .qr-image {
      width: 100%;
      height: auto;
      display: block;
      border-radius: 4px;
  }
  
  /* Responsive Footer */
  @media (max-width: 992px) {
      .footer-left-column,
      .footer-middle-column,
      .footer-right-column {
          padding: 0 15px;
          margin-bottom: 30px;
      }
  
      .footer-main-content {
          padding: 30px 20px;
      }
  }
  
  @media (max-width: 768px) {
      .footer-main-content {
          padding: 25px 15px;
      }
  
      .footer-left-column,
      .footer-middle-column,
      .footer-right-column {
          padding: 0;
          margin-bottom: 30px;
      }
  
      .footer-company-name {
          font-size: 18px;
      }
  
      .footer-contact-item {
          font-size: 14px;
      }
  
      .factory-title {
          font-size: 14px;
      }
  
      .factory-address {
          font-size: 13px;
      }
  
      .footer-map-container {
          height: 200px;
      }
  
      .qr-item {
          flex: 0 0 calc(33.333% - 10px);
          max-width: 80px;
      }
  }
  
  @media (max-width: 480px) {
      .footer-main-content {
          padding: 20px 10px;
      }
  
      .footer-qr-codes {
          justify-content: center;
      }
  
      .qr-item {
          flex: 0 0 calc(33.333% - 8px);
          max-width: 70px;
      }
  
      .footer-certifications {
          justify-content: center;
      }
  }
  
  /* Projects Section Styles */
  .wrap-projects {
      padding: 60px 0;
      background: #fff;
  }
  
  .wrap-projects .title-main {
      text-align: center;
      margin-bottom: 40px;
  }
  
  .wrap-projects .title-main h2 {
      font-size: 40px;
      font-weight: 400;
      color: var(--main-color);
      font-family: 'Oswald', sans-serif;
      text-transform: uppercase;
      margin-bottom: 15px;
  }
  
  .title-underline {
      position: relative;
      display: flex;
      justify-content: center;
      height: 3px;
      margin: 0 auto;
      width: 200px;
  }
  
  .title-underline::before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      height: 1px;
      background: repeating-linear-gradient(to right, #ddd 0, #ddd 8px, transparent 8px, transparent 16px);
  }
  
  .underline-active {
      width: 60px;
      height: 3px;
      background: linear-gradient(90deg, #03a655 0%, #00aeee 100%);
      margin: 0 auto;
      position: relative;
      z-index: 1;
  }
  
  /* Projects Tabs */
  .projects-tabs-wrapper {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 15px;
      margin-bottom: 40px;
      position: relative;
  }
  
  .projects-tab-nav {
      width: 32px;
      height: 32px;
      border: none;
      background: transparent;
      color: #999;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all 0.3s ease;
      flex-shrink: 0;
  }
  
  .projects-tab-nav:hover {
      color: #03a655;
  }
  
  .projects-tabs-container {
      flex: 1;
      overflow: hidden;
      max-width: 100%;
  }
  
  .projects-tabs {
      display: flex;
      gap: 15px;
      transition: transform 0.3s ease;
      width: max-content;
      max-width: 700px;
      margin: auto;
      justify-content: start;
      overflow: auto;
  }
  
  .projects-tab {
      padding: 10px 30px;
      border: 1px solid #ddd;
      background: #fff;
      color: #333;
      font-size: 14px;
      font-weight: 600;
      text-transform: uppercase;
      border-radius: 3px;
      cursor: pointer;
      transition: all 0.3s ease;
      white-space: nowrap;
      flex-shrink: 0;
      font-family: 'Oswald', sans-serif;
  }
  
  .projects-tab:hover {
      border-color: #03a655;
      color: #03a655;
  }
  
  .projects-tab.active {
      background: linear-gradient(90deg, #03a655 0%, #00aeee 100%);
      color: #fff;
      border-color: transparent;
  }
  
  /* Projects Swiper */
  .projects-swiper-wrapper {
      position: relative;
      /* padding: 0 60px; */
  }
  
  .projects-swiper {
      width: 100%;
      padding-bottom: 50px;
  }
  
  .projects-swiper .swiper-slide {
      width: auto;
      height: auto;
  }
  
  .project-card {
      width: 100%;
      height: 100%;
      border-radius: 2px;
      overflow: hidden;
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
  
  .project-card:hover {
      transform: translateY(-5px);
  }
  
  .project-image {
      position: relative;
       /* 4:3 aspect ratio */
      overflow: hidden;
      background: #f0f0f0;
  }
  
  .project-img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.3s ease !important;
      display: block;
  }
  
  .project-card:hover .project-img {
      transform: scale(1.05);
  }
  
  .project-overlay {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      background: linear-gradient(0deg, rgba(3, 166, 85, 0.9) 0%, rgba(0, 174, 238, 0.7) 100%);
      padding: 25px 20px;
      transform: translateY(0);
      transition: transform 0.3s ease;
  }
  
  .project-info {
      color: #fff;
  }
  
  .project-title {
      font-size: 18px;
      font-weight: 700;
      margin: 0 0 8px 0;
      line-height: 1.3;
      text-transform: uppercase;
      font-family: 'Oswald', sans-serif;
  }
  
  .project-location {
      font-size: 14px;
      margin: 0;
      opacity: 0.95;
  }
  
  /* Swiper Navigation */
  .projects-swiper-wrapper .swiper-button-prev,
  .projects-swiper-wrapper .swiper-button-next {
      width: 50px;
      height: 50px;
      border-radius: 50%;
      background: #fff;
      border: 2px solid #03a655;
      color: #03a655;
      top: 50%;
      transform: translateY(-50%);
      margin-top: 0;
      transition: all 0.3s ease;
  }
  
  .projects-swiper-wrapper .swiper-button-prev {
      left: -10px;
  }
  
  .projects-swiper-wrapper .swiper-button-next {
      right: -10px;
  }
  
  .projects-swiper-wrapper .swiper-button-prev:hover,
  .projects-swiper-wrapper .swiper-button-next:hover {
      background: linear-gradient(90deg, #03a655 0%, #00aeee 100%);
      border-color: transparent;
      color: #fff;
  }
  
  .projects-swiper-wrapper .swiper-button-prev::after,
  .projects-swiper-wrapper .swiper-button-next::after {
      font-size: 20px;
      font-weight: bold;
  }
  
  /* Swiper Pagination */
  .projects-swiper .swiper-pagination {
      bottom: 10px;
  }
  
  .projects-swiper .swiper-pagination-bullet {
      width: 10px;
      height: 10px;
      background: #ccc;
      opacity: 1;
      margin: 0 5px;
      transition: all 0.3s ease;
  }
  
  .projects-swiper .swiper-pagination-bullet-active {
      background: #03a655;
      width: 30px;
      border-radius: 5px;
  }
  .category-box{}
  .category-box a{
      font-family: 'Oswald', sans-serif;
      color: red;
      text-decoration: none;
  }
  .news-additional-info{
  padding-bottom: 5px;
  margin-bottom: 15px;
  border-bottom: 1px solid #d1d1d1;
  font-size: 14px;
  color: #737373;}
  /* Responsive */
  @media (max-width: 992px) {
      .projects-swiper-wrapper {
          padding: 0 50px;
      }
  
      .projects-swiper-wrapper .swiper-button-prev {
          left: 0;
      }
  
      .projects-swiper-wrapper .swiper-button-next {
          right: 0;
      }
  }
  
  @media (max-width: 768px) {
      .wrap-projects {
          padding: 40px 0;
      }
  
      .wrap-projects .title-main h2 {
          font-size: 32px;
      }
  
      .projects-tabs-wrapper {
          margin-bottom: 30px;
      }
  
      .projects-tab {
          padding: 10px 20px;
          font-size: 13px;
      }
  
      .projects-swiper-wrapper {
          padding: 0 40px;
      }
  
      .projects-swiper-wrapper .swiper-button-prev,
      .projects-swiper-wrapper .swiper-button-next {
          width: 40px;
          height: 40px;
      }
  
      .projects-swiper-wrapper .swiper-button-prev::after,
      .projects-swiper-wrapper .swiper-button-next::after {
          font-size: 16px;
      }
  }
  
  @media (max-width: 576px) {
      .wrap-projects .title-main h2 {
          font-size: 28px;
      }
  
      .projects-tabs-wrapper {
          gap: 10px;
      }
  
      .projects-tab-nav {
          width: 28px;
          height: 28px;
      }
  
      .projects-tab {
          padding: 8px 16px;
          font-size: 12px;
      }
  
      .projects-swiper-wrapper {
          padding: 0 30px;
      }
  
      .projects-swiper-wrapper .swiper-button-prev,
      .projects-swiper-wrapper .swiper-button-next {
          width: 35px;
          height: 35px;
          display: none;
      }
  
      .project-title {
          font-size: 16px;
      }
  
      .project-location {
          font-size: 13px;
      }
  }
  
  /* Sidebar Section Styles */
  .sidebar-section {
      background: #fff;
      border-radius: 8px;
      padding: 20px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
      transition: all 0.3s ease;
      -webkit-border-radius:;
      -moz-border-radius:;
      -ms-border-radius:;
      -o-border-radius:;
}
  
  .sidebar-section:hover {
      box-shadow: 0 4px 15px rgba(0, 0, 0, 0.12);
  }
  
  .sidebar-title {
      font-size: 18px;
      font-weight: 700;
      color: var(--main-color, #333);
      margin-bottom: 15px;
      padding-bottom: 10px;
      border-bottom: 2px solid #e0e0e0;
      text-transform: uppercase;
      font-family: 'Oswald', sans-serif;
      letter-spacing: 0.5px;
      position: relative;
  }
  
  .sidebar-title::after {
      content: "";
      position: absolute;
      bottom: -2px;
      left: 0;
      width: 60px;
      height: 2px;
      background: linear-gradient(90deg, #03a655 0%, #00aeee 100%);
  }
  
  .sidebar-items {
      display: flex;
      flex-direction: column;
      gap: 0;
  }
  
  .sidebar-item {
      padding: 10px 0;
      border-bottom: 1px solid #f0f0f0;
      transition: all 0.3s ease;
      align-items: center;
  }
  
  .sidebar-item:last-child {
      border-bottom: none;
      margin-bottom: 0 !important;
  }
  
  
  .sidebar-item-image {
      width: 68px;
      /* height: 80px; */
      border-radius: 6px;
      overflow: hidden;
      box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
      transition: all 0.3s ease;
      flex-shrink: 0;
  }
  
  .sidebar-item:hover .sidebar-item-image {
      box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
      transform: scale(1.05);
  }
  
  .sidebar-item-image a {
      display: block;
      width: 100%;
      height: 100%;
      overflow: hidden;
      border-radius: 6px;
  }
  
  .sidebar-item-image img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.3s ease;
      display: block;
  }
  
  .sidebar-item:hover .sidebar-item-image img {
      transform: scale(1.1);
  }
  
  .sidebar-item-content {
      padding-left: 5px;
      display: flex;
      align-items: center;
  }
  
  .sidebar-item-title {
      font-size: 13px;
      font-weight: 600;
      line-height: 1.4;
      margin: 0;
  }
  
  .sidebar-item-title a {
      color: #333;
      transition: color 0.3s ease;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
      text-overflow: ellipsis;
  }
  
  .sidebar-item:hover .sidebar-item-title a {
      color: #03a655;
  }
  
  /* Responsive Sidebar */
  @media (max-width: 992px) {
      .sidebar-section {
          padding: 15px;
      }
  
      .sidebar-title {
          font-size: 16px;
          margin-bottom: 12px;
      }
  
      .sidebar-item-image {
          width: 90px;
          height: 70px;
      }
  
      .sidebar-item-title {
          font-size: 13px;
      }
  }
  
  @media (max-width: 768px) {
      .sidebar-section {
          padding: 12px;
          margin-bottom: 20px;
      }
  
      .sidebar-title {
          font-size: 15px;
      }
  
      .sidebar-item {
          padding: 8px 0;
      }
  
      .sidebar-item-image {
          width: 80px;
          height: 60px;
      }
  
      .sidebar-item-content {
          padding-left: 10px;
      }
  
      .sidebar-item-title {
          font-size: 12px;
      }
  }
  
  @media (max-width: 576px) {
      .sidebar-item-image {
          width: 70px;
          height: 55px;
      }
  
      .sidebar-item-title {
          font-size: 11px;
      }
  }
  
  .sub-menu {
    position: relative;
    border-radius: 0 0 .3125rem .3125rem;
}
.menu .menu-item-has-children .sub-menu {
    display: none;
    z-index: 3;
    background-color: #fff;
}
@media (min-width: 1025.98px) {
    .menu .menu-item-has-children .sub-menu {
        -webkit-box-shadow: 0 36px 32px 16px rgba(0, 0, 0, .08);
        position: absolute;
        top: 100%;
        left: 0;
        box-shadow: 0 36px 32px 16px rgba(0, 0, 0, .08);
        /* border-radius: .41667rem; */
        /* padding: 2.08333rem; */
        width: 100%;
    }
}
.box-submenu-img a img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.box-submenu-img a{
    display:flex;
    height:100%;
}
.menu>ul>li.menu-item-has-children>.sub-menu {
    z-index: 3;
    background-color: #fff;
    top: 50%;
}
.menu.fix>ul>li.menu-item-has-children>.sub-menu{top:100%}
.menu-item-has-children{
    position:static !important;
}
.box-header-right,.menu,.menu-bar{
    /* position:static !important; */
}
@media (min-width: 1025.98px) {
    .menu>ul>li.menu-item-has-children>.sub-menu {
        -webkit-transform: scaleY(0);
        -ms-transform: scaleY(0);
        -webkit-transform-origin: top;
        -ms-transform-origin: top;
        -webkit-transition: all .25s ease-in-out;
        display: block;
        position: absolute;
        /* top: 50%; */
        left: 0;
        transform: scaleY(0);
        transform-origin: top;
        visibility: hidden;
        opacity: 0;
        transition: all .25s ease-in-out;
        width: 100%;
    }
}
@media (min-width: 1025.98px) {
    .menu>ul>li.menu-item-has-children:hover>.sub-menu {
        -webkit-transform: scaleY(1);
        -ms-transform: scaleY(1);
        transform: scaleY(1);
        visibility: visible;
        opacity: 1;
    }
}
.menu-subnote{
     display: -webkit-box;
    -webkit-line-clamp: 3;
    text-align: justify;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.menu>ul>li.menu-item-has-children>.sub-menu .submenu-sub .row>li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.33333%;
    position: relative;
    flex: 0 0 33.33333%;
    width: 100%;
    max-width: 33.33333%;
    text-align: left;
}
.menu>ul>li.menu-item-has-children>.sub-menu .submenu-sub .row>li a {
    display: block;
    font-weight: 500;
    padding: 0;
    font-size: 16px;
}
.menu>ul>li.menu-item-has-children>.sub-menu .submenu-sub .row>li>a {
    text-decoration: none !important;
}
.menu>ul>li>a li a {
    font-size: .83333rem;
    line-height: 1.5;
}
.menu .menu-item-has-children .sub-menu .submenu-sub li a {
    display: block;
    font-weight: 500;
}
.menu-subnotes {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    gap: .20833rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    margin-top: .41667rem;
}

.menu>ul>li.menu-item-has-children>.sub-menu .submenu-sub {
    padding: 2.125rem 2.125rem 3.125rem 1.04167rem;
}
 .submenu-sub .row{
   margin-left: -10px;
   margin-right: -10px;
 }
.submenu-sub .row li{
    padding-left: 10px;
    padding-right: 10px;
}










.wrap-projects-section {
    padding: 60px 0;
    margin: 40px 0;
}

/* Section Title */
.projects-section-title {
    text-align: center;
    margin-bottom: 50px;
}

.title-main-projects {
    font-size: 32px;
    font-weight: 700;
    color: #2f3192;
    text-transform: uppercase;
    margin-bottom: 20px;
    letter-spacing: 1px;
}

.title-decoration-line {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0;
    max-width: 500px;
    margin: 0 auto;
}

.line-green {
    width: 60px;
    height: 3px;
    background: #03a656;
    flex-shrink: 0;
}

.line-dotted {
    flex: 1;
    height: 2px;
    background: repeating-linear-gradient(
        to right,
        #ddd 0px,
        #ddd 4px,
        transparent 4px,
        transparent 8px
    );
    margin: 0 10px;
}

.line-blue {
    width: 60px;
    height: 3px;
    background: #00aeed;
    flex-shrink: 0;
}

/* Navigation Tabs Wrapper */
.projects-nav-wrapper {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0 auto 50px;
    padding: 20px 40px;
    width: auto;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    flex-wrap: nowrap;
}

/* Custom scrollbar styling */
.projects-nav-wrapper::-webkit-scrollbar {
    height: 6px;
}

.projects-nav-wrapper::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.projects-nav-wrapper::-webkit-scrollbar-thumb {
    background: linear-gradient(90deg, #03a656 0%, #00aeed 100%);
    border-radius: 10px;
}

.projects-nav-wrapper::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(90deg, #02954d 0%, #0099d6 100%);
}

.swiper-tabs-nav {
    flex: 1;
    overflow: hidden;
    cursor: grab;
}

.swiper-tabs-nav:active {
    cursor: grabbing;
}

.swiper-tabs-nav .swiper-slide {
    width: auto;
    display: flex;
    justify-content: center;
}

.project-tab-btn {
    padding: 12px 30px;
    font-size: 16px;
    font-weight: 600;
    color: #333;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
    flex-shrink: 0;
    text-decoration: none;
}

.project-tab-btn:hover {
    border-color: #03a656;
    color: #03a656;
}

.project-tab-btn.active {
    color: #fff;
    background: linear-gradient(90deg, #03a656 0%, #00aeed 100%);
    border-color: transparent;
    box-shadow: 0 4px 15px rgba(3, 166, 86, 0.3);
}

.swiper-tabs-prev,
.swiper-tabs-next {
    width: 30px;
    height: 30px;
    border: none;
    background: transparent;
    color: #666;
    flex-shrink: 0;
    margin: 0 5px;
    cursor: pointer;
    transition: color 0.3s ease;
}

.swiper-tabs-prev::after,
.swiper-tabs-next::after {
    font-size: 18px;
    font-weight: normal;
}

.swiper-tabs-prev:hover,
.swiper-tabs-next:hover {
    color: #03a656;
}

/* Projects Carousel Wrapper */
.projects-carousel-wrapper {
    position: relative;
    display: flex;
    align-items: center;

}

.swiper-projects {
    flex: 1;
    position: relative;
    padding: 20px 0 60px;
    overflow: hidden;
    width: 100%;
    height: auto;
}

.swiper-projects .swiper-wrapper {
    display: flex;
    align-items: stretch;
    height: auto;
    min-height: 0;
}

.swiper-projects .swiper-slide {
    height: auto;
    display: flex;
    flex-shrink: 0;
}

.project-card-link {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: inherit;
}

.project-card {
    background: #fff;
    border-radius: 0;
    overflow: hidden;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.project-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.project-image {
    position: relative;
    overflow: hidden;
    width: 100%;
    flex-shrink: 0;
}

.project-image .ratio {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 83.2%; /* 322/387 * 100 */
}

.project-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
}

.project-card:hover .project-img {
    transform: scale(1.05);
}

.project-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(90deg, #03a656 0%, #00aeed 100%);
    padding: 20px;
    color: #fff;
    z-index: 2;
}

.project-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.project-title {
    font-size: 18px;
    font-weight: 700;
    margin: 0;
    color: #fff;
    line-height: 1.3;
    text-transform: uppercase;
}

.project-location {
    font-size: 14px;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

.project-location svg {
    flex-shrink: 0;
}

.swiper-projects-prev,
.swiper-projects-next {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    border: 2px solid #03a656;
    background: #fff;
    color: #03a656;
    flex-shrink: 0;
    position: static;
    margin: 0 20px;
}

.swiper-projects-prev::after,
.swiper-projects-next::after {
    font-size: 24px;
    font-weight: bold;
}

.swiper-projects-prev:hover,
.swiper-projects-next:hover {
    background: linear-gradient(90deg, #03a656 0%, #00aeed 100%);
    border-color: transparent;
    color: #fff;
    transform: scale(1.1);
}

.swiper-projects .swiper-pagination {
    bottom: 10px;
    position: absolute;
}

.swiper-projects .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: #ddd;
    opacity: 1;
    margin: 0 5px;
}

.swiper-projects .swiper-pagination-bullet-active {
    background: #03a656;
    width: 12px;
    height: 12px;
}

@media (max-width: 992px) {
    .projects-carousel-wrapper {
        /* padding: 0 60px; */
    }
    
    .swiper-projects-prev,
    .swiper-projects-next {
        width: 50px;
        height: 50px;
        margin: 0 10px;
    }
}

@media (max-width: 768px) {
  .wrap-projects-section{
    padding: 0;
    margin: 0;
}
    .title-main-projects {
        font-size: 24px;
    }
    
    .projects-nav-wrapper {
        padding: 15px 20px;
        gap: 6px;
        justify-content: flex-start;
    }
    
    .project-tab-btn {
        padding: 10px 20px;
        font-size: 14px;
    }
    
    .projects-carousel-wrapper {
        /* padding: 0 50px; */
    }
    
    .swiper-projects-prev,
    .swiper-projects-next {
        width: 40px;
        height: 40px;
        margin: 0 5px;
    }
    
    .swiper-tabs-prev,
    .swiper-tabs-next {
        width: 25px;
        height: 25px;
        margin: 0 3px;
    }
}






.wrap-consultation-form {
    padding: 40px 0;
    margin: 40px 0;
}

.consultation-form-container {
    background: #fff;
    border-radius: 20px;
    padding: 30px;
    border: 3px solid transparent;
    background-image: linear-gradient(white, white), linear-gradient(90deg, #03a656 0%, #00aeed 100%);
    background-origin: border-box;
    background-clip: padding-box, border-box;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
}

.consultation-image-wrapper {
    border-radius: 15px;
    overflow: hidden;
    height: 100%;
    min-height: 400px;
}

.consultation-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.consultation-form-content {
    padding: 20px 30px;
}

.consultation-form-title {
    font-size: 29px;
    font-weight: 400;
    color: #333;
    margin-bottom: 15px;
    line-height: 1.3;
    color: var(--main-color);
    font-family: 'Oswald', sans-serif;
}

.consultation-form-desc {
    font-size: 15px;
    color: #666;
    margin-bottom: 30px;
    line-height: 1.6;
}

.consultation-form-group {
    margin-bottom: 20px;
}

.consultation-input {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ddd;
    border-radius: 8px;
    font-size: 15px;
    transition: all 0.3s ease;
    background: #f8f9fa;
}

.consultation-input:focus {
    outline: none;
    border-color: #03a656;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(3, 166, 86, 0.1);
}

.consultation-input::placeholder {
    color: #999;
}

.consultation-submit-btn {
    width: 100%;
    padding: 14px 30px;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    border: none;
    border-radius: 8px;
    background: linear-gradient(90deg, #03a656 0%, #00aeed 100%);
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
}

.consultation-submit-btn:hover:not(:disabled) {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(3, 166, 86, 0.3);
}

.consultation-submit-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.invalid-feedback {
    display: none;
    color: #dc3545;
    font-size: 13px;
    margin-top: 5px;
}

.consultation-input:invalid:not(:placeholder-shown) + .invalid-feedback {
    display: block;
}

@media (max-width: 991px) {
    .consultation-form-container {
        padding: 20px;
    }
    
    .consultation-form-content {
        padding: 20px 15px;
    }
    
    .consultation-image-wrapper {
        min-height: 300px;
        margin-bottom: 20px;
    }
    
    .consultation-form-title {
        font-size: 24px;
    }
}


.global-title{
    text-align: center;
    font-weight: 700;
    color: #414141;
}



/* Toc */
a.mucluc-dropdown-list_button {}

a.mucluc-dropdown-list_button:before {
   content: "\f03a";
   font-family: "FontAwesome";
   font-style: normal;
   font-weight: 400;
   background: #fff;
   color: #006acb !important;
   font-size: 20px;
   width: 35px;
   height: 35px;
   display: inline-block;
   line-height: 38px;
   text-align: center;
   border: 1px solid #ddd;
}

.meta-toc.fiedx {
   /* position: fixed; */
   left: 5px;
   top: 200px;
   z-index: 111;
}

.meta-toc .mucluc-dropdown-list_button {
   display: none;
}

.meta-toc.fiedx .mucluc-dropdown-list_button {
   /* display: block; */
}

.meta-toc:not(.fiedx) .box-readmore {
   display: block !important;
}

.box-readmore {
   padding: 10px;
   background-color: #f5f5f5;
   width: 100%;
   margin-top: 2px;
   border: 1px solid #dddddd;
   font-size: 13px;
   margin-bottom: 10px;
}

.meta-toc.fiedx .box-readmore {
   /* width: 350px; */
   /* display: none; */
}

.box-readmore li ul>li {
   margin: 0;
   margin-bottom: 8px;
}

.box-readmore li ul>li:before {
   content: counters(item, ".") " ";
}
.box-readmore > ul {padding-left:0 !important}
.box-readmore ul {
   list-style-type: none;
   counter-reset: item;
   margin-bottom: 0px;
   padding-left: 0px !important;
   margin-top: 8px;
   padding-left: 15px !important;
}

.box-readmore ul li {
   display: table;
   counter-increment: item;
   margin: 0 0 5px 0;
}

.box-readmore ul li a {}

.box-readmore ul li:before {
  display:none !important;
   content: counters(item, ".") ". ";
   display: table-cell;
   padding-right: 5px;
}

.box-readmore ul li a {
   color: #000 !important;
   cursor: pointer;
   font-weight: 500;
   font-size: 14px;
   text-decoration: none;
}

.box-readmore ul li li a {
   font-weight: 400;
}

.box-readmore ul li a:hover {
   color: #767676;
   text-decoration: underline;
}


#svg-market svg{
    width: 100%;
  
}


.section-market {
    padding: 40px 0;
    background: url(../images/bg.svg);
    background-size: cover;
}

.section-market .row {
    align-items: center;
}

.section-market .market-map-shell {
    position: relative;
    min-height: 540px;
}

.section-market #svg-market {
    position: relative;
    min-height: 540px;
}

.section-market #svg-market .market-svg-inner {
    position: relative;
    width: 100%;
}

.section-market #svg-market svg {
    display: block;
    width: 100% !important;
    height: auto !important;
    max-width: 100%;
}

.section-market #svg-market svg path {
    fill: #c8c8cd !important;
    stroke: #ffffff;
    stroke-width: 0.9;
    transition: fill 0.25s ease, filter 0.25s ease, transform 0.25s ease;
    cursor: default;
}

.section-market #svg-market svg path.market-country {
    fill: #f33b3b !important;
    cursor: pointer;
}

.section-market #svg-market svg path.market-country.is-active,
.section-market #svg-market svg path.market-country:hover {
    fill: #ff2424 !important;
    filter: drop-shadow(0 4px 10px rgba(243, 59, 59, 0.35));
}

.section-market .market-markers {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 3;
}

.section-market .market-marker {
    position: absolute;
    width: 26px;
    height: 18px;
    border: 0;
    padding: 0;
    border-radius: 4px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(17, 35, 63, 0.18);
    transform: translate(-50%, -50%);
    pointer-events: auto;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.section-market .market-marker img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.section-market .market-marker.is-active,
.section-market .market-marker:hover {
    transform: translate(-50%, -50%) scale(1.12);
    box-shadow: 0 14px 28px rgba(17, 35, 63, 0.24);
}

.section-market .market-tooltip {
    position: absolute;
    width: min(270px, calc(100% - 24px));
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 16px 35px rgba(11, 39, 74, 0.2);
    padding: 13px 20px 18px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
    z-index: 4;
    pointer-events: none;
}

.section-market .market-tooltip.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.section-market .market-tooltip-flags {
    position: absolute;
    left: 18px;
    top: -12px;
    display: flex;
    align-items: center;
    gap: 0;
}

.section-market .market-tooltip-flag {
    width: 30px;
    height: 22px;
    display: block;
    border-radius: 4px;
    overflow: hidden;
    background: #ffffff;
    box-shadow: 0 6px 14px rgba(16, 50, 83, 0.18);
}

.section-market .market-tooltip-flag img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.section-market .market-tooltip-title {
    margin-bottom: 10px;
    color: #07aa94;
    font-size: 22px;
    font-weight: 500;
    line-height: 1.15;
    text-align: center;
}

.section-market .market-tooltip-desc {
    margin: 0;
    color: #535353;
    font-size: 16px;
    line-height: 1.6;
    border-top: 1px solid #ececec;
    padding-top: 12px;
    text-align: justify;
}

.section-market .market-panel {
    max-width: 390px;
    margin-left: auto;
}

.section-market .market-title {
    margin-bottom: 28px;
    text-align: center;
}

.section-market .market-title h2 {
    margin: 0;
    color: #2d3191;
    font-size: 54px;
    font-weight: 800;
    line-height: 1.14;
    text-transform: uppercase;
}

.section-market .market-title::after {
    content: "";
    width: 116px;
    height: 10px;
    display: block;
    margin: 14px auto 0;
    background:
        linear-gradient(90deg, rgba(14, 178, 77, 0) 0%, rgba(14, 178, 77, 0.55) 24%, #0eb24d 48%, rgba(23, 160, 223, 0.95) 52%, rgba(23, 160, 223, 0.5) 76%, rgba(23, 160, 223, 0) 100%);
    border-radius: 999px;
}

.section-market .market-list {
    display: flex;
    flex-direction: column;
    gap: 11px;
}

.section-market .market-tab {
    width: 100%;
    border: 0;
    border-radius: 999px;
    background: #ffffff;
    color: #7c7c7c;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.2;
    padding: 18px 24px;
    box-shadow: 0 4px 0 rgba(26, 160, 223, 0.08), inset 0 0 0 1px rgba(18, 160, 221, 0.14);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
}

.section-market .market-tab:hover,
.section-market .market-tab.active {
    color: #ffffff;
    background: linear-gradient(90deg, #08b05d 0%, #16a7d9 100%);
    box-shadow: 0 12px 28px rgba(20, 147, 197, 0.26);
    transform: translateY(-2px);
}

.section-market .market-empty {
    margin: 0;
    color: #5d7689;
    font-size: 16px;
    line-height: 1.7;
    text-align: center;
}

@media (max-width: 991px) {
    .section-market {
        padding: 42px 0;
    }

    .section-market .market-map-shell,
    .section-market #svg-market {
        min-height: 420px;
    }

    .section-market .market-panel {
        max-width: none;
        margin-top: 28px;
    }

    .section-market .market-title h2 {
        font-size: 38px;
    }

    .section-market .market-tooltip-title {
        font-size: 27px;
    }

    .section-market .market-tooltip-desc {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    .wrap-title-about{
        width: 100%;
    }
    .section-market .market-map-shell,
    .section-market #svg-market {
        min-height: 320px;
    }

    .section-market .market-title h2 {
        font-size: 30px;
    }

    .section-market .market-tab {
        font-size: 16px;
        padding: 15px 20px;
    }

    .section-market .market-tooltip {
        padding: 22px 18px 16px;
    }
}
@media(min-width: 992px){
    .left-nav-product{
       width: 20% !important;
       flex:  0 0 20% !important;
    }
    .right-nav-product{
       width: 80% !important;
       flex:  0 0 80% !important;
    }
}


div#danhmuc {
    border-bottom: none;
}

    div.danhmuc {
        margin-bottom: 15px;
    }
    div#danhmuc ul {
        list-style: none;
        padding: 0;
        margin: 0;
        padding-left: 10px;
    }
    div#danhmuc ul li {
        position: relative;
    }
    div#danhmuc ul li a {
        color: #454545;
        text-decoration: none;
        font-size: 17px;
        transition: 0.4s;
        display: block;
        border-bottom: 1.5px dotted #DDD;
        padding: 10px 5px 10px 0;
        font-weight: 400;
        position: relative;
    }
    div#danhmuc ul li ul li a {
        padding: 8px 5px 8px 25px;
        font-weight: 300;
        font-size: 16px;
    }
    div#danhmuc ul li ul li a:before {
        content: "";
        background: var(--color-gradient-1);
        width: 5px;
        height: 5px;
        border-radius: 50%;
        position: absolute;
        left: 10px;
        top: 17px;
    }
    .danhmuc_list a::after{display: none;}
    .footer-certifications div {
        display: flex;
        background: #fff;
        width: fit-content;
        padding: 0 10px;
    }