/* h1, h2, h3, h4 {
  color: var(--color-gray-500);
} */

/* Sticky pet menu = 70px → keep content clear and make in-page anchor jumps land below the menu */
.container-body {
  padding-top: 24px;
  padding-bottom: 24px;
}
.post-header {
  padding-top: 16px;
}
.post-content h3 {
  scroll-margin-top: 90px;
}

.text-header {
  color: var(--color-gray-500);
  font-size: 2rem;
  line-height: 2.5rem;
}
.text-black {
  color: var(--color-gray-500);
}
.text-green {
  color: var(--color-primary-base);
}
.my-405 {
  margin-top: 32px;
  margin-bottom: 32px;
}
.btn-geneus-blog {
  border: 1px solid var(--color-gray-200);
  color: var(--color-gray-300);
  background-color: #fff;
  border-radius: 12px;
  margin: 5px 2px;
  padding: 8px 14px;
}

.btn-geneus-blog:hover {
  border: 1px solid var(--color-primary-base);
  color: var(--color-primary-base);
}

.btn-geneus-blog.active {
  border: 1px solid var(--color-primary-base);
  color: var(--color-gray-50);
  background-color: var(--color-primary-base);
}

.input-icons .icon {
  position: absolute;
  padding: 0.7rem .75rem;
  min-width: 20px;
  right:0;
  font-size: 1rem;
  color: var(--color-gray-300);
}

.input-icons {
  width: 100%;
  margin-bottom: 10px;
  position: relative;

}

.input-field {
  width: 100%;
  padding: 10px .75rem;
  text-align: left;
  padding-right: 34px;
  border: 1px solid #dee2e6;
  border-radius: 12px;
  color: var(--color-gray-300);
  font-size: 1rem;
}

.input-field:focus-visible {
  border: 1px solid var(--color-primary-base);
  outline: none;
}

.blog-hero-banner {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 24px;
  margin-top: 20px;
}

.blog-header-first-page {
  position: relative;
  height: 130px;
  margin-top: 20px;
  margin-bottom: 20px;
}

.blog-header-first-page .header-bg {
 height: 100%;
 object-fit: cover;
}

.blog-header-first-page .header-fr {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100%;
 }

.blog-thumnail{
  border-radius: 24px;
  width: 100%;
}

.blog-item-3 .blog-thumnail {
  height: 280px;
  object-fit: cover;
}
.blog-item-2 .blog-thumnail {
  height: 280px;
  object-fit: cover;
}
.blog-item {
  margin-bottom: 1rem;
  margin-top: 1rem;
}
.blog-item:hover{
  cursor: pointer;
}
.blog-item:hover .blog-thumnail{
  box-shadow: 0px 2px 4px -2px #1018280F;
  box-shadow: 0px 4px 8px -2px #1018281A;
}
.blog-item:hover .title{
  color: var(--color-primary-hover);
}
.blog-item .arrow {
  display: flex;
  color: var(--color-gray-300);
  font-size: 1.1rem;
  align-items: center;
  justify-content: end;
}
@media (hover: hover) {
  .blog-item .arrow {
    display: none;
  }
  .blog-item:hover .arrow {
    display: flex;
  }
}
.item-category{
  border: 1px solid var(--color-gray-200);
  color: var(--color-gray-300);
  background-color: #fff;
  border-radius: 30px;
  margin: 2px 2px;
  font-size: 0.8rem;
  padding: 3px 10px;
  display: inline-block;
}
.blog-item .title {
  color: var(--color-primary-base);
  font-size: 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.8rem;
}
.blog-item .description {
  font-size: 1rem;
  padding-top: 10px;
  padding-bottom: 10px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.author-box  {
  font-size: 0.8rem;
  color: var(--color-gray-300)
}
.author-box .name {
  color:  var(--color-primary-base);
  display: inline-block;
  margin-right: 5px;
  margin-left: 5px;
}
.author-box .date {
  display: inline-block;
  margin-left: 5px;
}
.author-box .view {
  display: inline-block;
  margin-left: 5px;
}
.author-box img {
  width: 24px;
  height: 24px;
  border-radius: 0px;
  object-fit: cover;
  margin-right: 10px;
}


.blog-carousel-header .carousel-img {
  max-height: 300px;
  width: 100% !important;
  object-fit: cover;
  border-radius: 24px;
}


.blog-carousel-header .title {
  color: var(--color-primary-base);
  font-size: 1.5rem;
  line-height: 2rem;
}
.blog-carousel-header .content-box {
  padding: 10px 50px;

}
.geneus-carousel .owl-item {
  padding-bottom: 10px;
}
.geneus-carousel .owl-item:hover {
  cursor: pointer;
}
.geneus-carousel .owl-item:hover .title {
  color: var(--color-primary-hover);
}
.geneus-carousel .owl-item:hover .carousel-img {
  box-shadow: 0px 2px 4px -2px rgba(16, 24, 40, 0.06), 0px 4px 8px -2px rgba(16, 24, 40, 0.10);
}
.arrow-back-main {
  color: var(--color-primary-base);
  font-size: 24px;
  vertical-align: middle;
  margin-right: 16px;
}
.arrow-back-main a {
  color: var(--color-primary-base);
  text-decoration: none;
}
.arrow-back-main a:hover {
  color: var(--color-primary-hover);
  text-decoration: none;
}

.post-content {
  /* padding: 20px 50px 0px 20px; */
  /* margin-top: 2rem; */
}
.post-content .img-cover {
  margin: 0px;
  max-height: 480px;
  width: 100%;
  object-fit: cover;
  border-radius: 24px;
}

.post-content img {
  border-radius: 24px;
  margin-top: 10px;
  margin-bottom: 10px;
  max-width: 100%;
  height: auto;
}

.post-content h3 {
  color: var(--color-primary-base);
  margin-top: 1rem;
  margin-bottom: 10px;
}
.post-content a:link {
  color: var(--color-primary-base);
  word-break: break-all;
}
.post-content a:link:hover {
  color: var(--color-primary-hover);
  cursor: pointer;
}
blockquote {
  border-left: 5px solid var(--color-primary-base);
  padding-left: 10px;
  margin-left: 0px;
  margin-right: 0px;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 1.2rem;
  color: var(--color-gray-500);
}
.summary-post {
  background: var(--color-bg-03);
  border-radius: 24px;
  min-height: 300px;
  padding: 16px;
  width: 196px;
  margin-bottom: 16px;
}

.summary-post .p2 {
  color: var(--color-gray-500);
}

.summary-post .item {
  margin-top: 10px;
  font-size: 0.8rem;
}

.summary-post .item:hover {
  color: var(--color-primary-base);
  text-decoration: underline;
  cursor: pointer;
}
.share-post-box {
  background: var(--color-bg-03);
  border-radius: 24px;
  padding: 16px;
  margin-bottom: 16px;
  width: 196px;
}
.share-post-box .p4 {
  color: var(--color-gray-500);
}
.share-post-box .item {
  font-size: 2rem;
  margin: 5px 10px;
  color: var(--color-gray-300);
}
.share-post-box .item:hover {
  cursor: pointer;
  color: var(--color-primary-base);
}
.copy-url {
  color: var(--color-gray-300);
}
.copy-url:hover {
  cursor: pointer;
  color: var(--color-primary-base);
}

.categories-box {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

/* ---------- Loading skeleton (blog-all-post) ---------- */
.blog-skel {
  background: linear-gradient(90deg, #ececef 0%, #f6f6f8 50%, #ececef 100%);
  background-size: 200% 100%;
  animation: blog-skel-shimmer 1.4s ease-in-out infinite;
  border-radius: 8px;
}
.blog-skel-thumb {
  width: 100%;
  height: 280px;
  border-radius: 24px;
}
.blog-skel-line {
  display: block;
}
.blog-item-3 .blog-skel-thumb, .blog-item-2 .blog-skel-thumb { height: 280px; }
@media (max-width: 991.98px) {
  .blog-item-3 .blog-skel-thumb, .blog-item-2 .blog-skel-thumb { height: 140px; }
}
@media (max-width: 767.98px) {
  .blog-item-3 .blog-skel-thumb, .blog-item-2 .blog-skel-thumb { height: 180px; }
}
@keyframes blog-skel-shimmer {
  0%   { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}
@media (prefers-reduced-motion: reduce) {
  .blog-skel { animation: none; }
}
.categories-box .btn-geneus-blog {
  text-wrap: nowrap;
  margin: 0;
}

.header-all-text,
.blog-hero-title {
  background: linear-gradient(119.15deg, rgba(242, 140, 173, 0.8) -8.54%, rgba(24, 169, 207, 0.8) 42.61%, rgba(69, 164, 198, 0.8) 56.02%, rgba(37, 177, 193, 0.8) 81.16%, rgba(84, 151, 209, 0.8) 117.99%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.header-all-text {
  font-size: 4rem;
  padding-top: 5px;
  padding-left: 5px;
  display: inline-block;
}

#summary-box{
  position: sticky;
    top: 70px;
}
.owl-carousel .owl-item img {
  display: initial;
  width: initial;
}

/* `xxl` applies to x-large devices (large desktops, less than 1400px) */
@media (max-width: 1399.98px) {  }
/* `xl` applies to large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
  .blog-carousel-header .content-box {
    padding: 10px 20px;
  }
 }
/* `lg` applies to medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
  .blog-carousel-header .title {
    font-size: 1.3rem;
    line-height: 1.7rem;
  }
  .blog-header-first-page {
    display: flex;
    align-items: center;
  }
  .blog-header-first-page .header-bg {
    height: 70%;
  }
  .summary-post, .share-post-box {
    width: 120px;
  }
  .share-post-box .item {
    font-size: 1.5rem;
    margin: 12px;
  }
  .blog-item-3 .blog-thumnail, .blog-item-2 .blog-thumnail {
    height: 140px;
  }
 }

  @media (max-width: 767.98px) {

    .blog-header-first-page {
      height: 100px;
      display: flex;
      align-items: center;
    }
    .blog-header-first-page .header-bg {
      height: 70%;
    }
    .blog-carousel-header .content-box {
        padding: 10px 0px;
    }
    .blog-carousel-header .carousel-img {
      max-height: 200px;
    }
    .blog-carousel-header .title {
      font-size: 1rem;
      line-height: 1.5rem;
    }
    .header-all-text {
      font-size: 2rem;
    }

    .text-header {
      font-size: 1.75rem;
    }
    .my-405 {
      margin-top: 24px;
      margin-bottom: 24px;
    }
    .summary-post {
      margin-top: 16px;
      margin-bottom: 16px;
    }
    .summary-post, .share-post-box {
      width: 100%;
      min-height: 100px;
    }
    .blog-item-3 .blog-thumnail, .blog-item-2 .blog-thumnail {
      height: 180px;
    }

}

 /* `sm` applies to x-small devices (portrait phones, less than 576px) */
 @media (max-width: 575.98px) {
  .blog-header-first-page {
    height: 70px;
    display: flex;
    align-items: center;
  }
  .blog-header-first-page .header-bg {
    height: 70%;
  }
}
