.home-content-blog .col-list,
.page-blog .col-list {
  position: relative;
  margin-bottom: 30px;
}

.home-content-blog .category-empty,
.page-blog .category-empty {
  visibility: hidden;
}

.page-project-detail .layout-video {
  position: relative;
}

.page-project-detail .layout-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media (min-width: 992px) {
  .page-blog .col-lg-3,
  .home-content-blog .col-lg-3 {
    width: 20%;
  }
}

@media (max-width: 991.9px) {
  /* No styles defined */
}

.button-generic {
    position: relative;
    padding: 17px 40px;
    border-radius: 0px;
    font-weight: 400;
    font-size: 20px;
    color: var(--white-color);
    display: inline-block;
    text-transform: uppercase;
    background: var(--main-color);
    background: linear-gradient(to top, var(--main-color) 0%, var(--color-two) 100%);
}

.slide-inner {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-size: cover;
    background-position: center;
}

.slide-inner .slide-image {
    animation: kbrns_zoomInOut 15s linear 0s infinite alternate;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-size: cover;
    background-position: center;
}

.slide-inner .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
}

.swiper-slide-content {
    z-index: 999;
    position: absolute;
    left: 50%;
    margin: 0 auto;
    text-align: center;
    width: 70%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.swiper-slide-content .text-slider{
	font-size: 20px;
    color: #ffffff;
}

.swiper-slide-content  h1{
	color:#ffffff;
	font-size: 40px;
	line-height: 1.3;
	margin-bottom: 28px;
}
.swiper-slide-content  p{
	line-height: 1.3;
}
.swiper-slide-content  a, .swiper-slide-content  p{
	color:#ffffff;
	font-size: 19px;
	margin-bottom: 28px;
}

.text-clamp {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    overflow-wrap: break-word;
}

.text-clamp-row-limit{
    -webkit-line-clamp: 7;
}

.swiper-slide-content .button-home {
    position: relative;
    padding: 15px 35px;
    border-radius: 0px;
    margin: 15px 20px;
    font-weight: 500;
    font-size: 16px;
    color: var(--white-color);
    display: inline-block;
    text-transform: uppercase;
    background: var(--main-color);
    background: linear-gradient(to top, var(--main-color) 0%, var(--color-two) 100%);
}

.swiper-slide-content .button-home:hover{
	opacity: 0.8;
}

/* Giảm opacity & brightness cho tất cả slide không phải active */
.swiper-container-home .swiper-slide:not(.swiper-slide-active) {
  opacity: 0.1;                     /* mờ đi một nửa */
  filter: brightness(0.5);          /* giảm độ sáng còn 70% */
}

/* Giữ slide active rõ nét */
.swiper-container-home .swiper-slide-active {
  opacity: 1;
  filter: brightness(1);
}

.swiper-container-home .swiper-slide-prev,
.swiper-container-home .swiper-slide-next {
  opacity: 0.6;
  filter: brightness(0.75);
}

@media screen and (max-width: 768px) {
  .swiper-slide-content h1{
	font-size: 16px;
  }
  .swiper-slide-content .text-slider{
	font-size: 14px;
    color: #ffffff;
	}
  .swiper-slide-content .text-clamp-row-limit , .swiper-slide-content .text-clamp-row-limit p{
	-webkit-line-clamp: 3;
	font-size: 14px;
  }
  .banner-slider-home .swiper-button-next::after, .banner-slider-home .swiper-button-prev::after{
	font-size: 12px;
  }
  .banner-slider-home .swiper-button-next, .banner-slider-home .swiper-button-prev{
	width: 35px;
    height: 35px;
  }
  .swiper-slide-content .button-home{
	padding: 8px 16px;
    border-radius: 0px;
    margin: 10px 20px;
    font-weight: 500;
    font-size: 12px;
  }
  .page-blog .journal-block_one-heading, .home-content-blog .journal-block_one-heading{
	max-width: 100%;
  }
  .page-blog .journal-block_one-heading.text-clamp , .home-content-blog .journal-block_one-heading.text-clamp{
	-webkit-line-clamp: none;
  }
  .main-content .gallery-block_one-heading.text-clamp, .gallery-one .gallery-block_one-heading.text-clamp{
	-webkit-line-clamp: none;
  }
}


@-webkit-keyframes kbrns_zoomInOut {
  0% {
    -webkit-transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.2);
  }
}
@-moz-keyframes kbrns_zoomInOut {
  0% {
    -moz-transform: scale(1);
  }
  100% {
    -moz-transform: scale(1.2);
  }
}
@-ms-keyframes kbrns_zoomInOut {
  0% {
    -ms-transform: scale(1);
  }
  100% {
    -ms-transform: scale(1.2);
  }
}
@-o-keyframes kbrns_zoomInOut {
  0% {
    -o-transform: scale(1);
  }
  100% {
    -o-transform: scale(1.2);
  }
}
@keyframes kbrns_zoomInOut {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.2);
  }
}

/* Responsive YouTube iframe styles for page-project-detail, journal-detail, and service-details__left */
.page-project-detail iframe,
.page-project-detail p iframe,
.journal-detail iframe,
.journal-detail p iframe,
.service-details__left iframe,
.service-details__left p iframe {
    max-width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    border: none;
    border-radius: 8px;
}

/* Alternative fallback for browsers that don't support aspect-ratio */
.page-project-detail .responsive-iframe-container,
.journal-detail .responsive-iframe-container,
.service-details__left .responsive-iframe-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    overflow: hidden;
    border-radius: 8px;
}

.page-project-detail .responsive-iframe-container iframe,
.journal-detail .responsive-iframe-container iframe,
.service-details__left .responsive-iframe-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* Ensure p tags containing iframes don't add extra spacing */
.page-project-detail p:has(iframe),
.journal-detail p:has(iframe),
.service-details__left p:has(iframe) {
    margin: 0;
    padding: 0;
    line-height: 0;
}

/* For any embedded video content */
.page-project-detail video,
.journal-detail video,
.service-details__left video {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* Mobile responsive adjustments */
@media screen and (max-width: 768px) {
    .page-project-detail iframe,
    .page-project-detail p iframe,
    .journal-detail iframe,
    .journal-detail p iframe,
    .service-details__left iframe,
    .service-details__left p iframe {
        border-radius: 4px;
    }

    .page-project-detail .responsive-iframe-container,
    .journal-detail .responsive-iframe-container,
    .service-details__left .responsive-iframe-container {
        border-radius: 4px;
    }
}
