/* ================== DANH MỤC CHUYÊN MỤC ================== */
.danh-muc-dich-vu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-bottom: 30px;
}

.danh-muc-dich-vu .cat-link {
  font-weight: 600;
  text-transform: uppercase;
  font-size: 13px;
  text-decoration: none;
  color: #333;
  padding: 5px 12px;
  border-radius: 4px;
  transition: 0.3s;
  border-bottom: 2px solid transparent;
}

.danh-muc-dich-vu .cat-link:hover {
  color: #30a753;
}

.danh-muc-dich-vu .cat-link.active {
  color: #30a753;
  border-bottom: 2px solid #30a753;
}

/* ================== GRID DỊCH VỤ ================== */
.grid-dich-vu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px;
}

.service-card {
  width: calc(25% - 18.75px);
  background: #fff;
  border: 2px dotted #30a753;
  border-radius: 14px;
  padding: 15px;
  text-align: center;
  transition: 0.3s;
}

.service-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.service-card img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  aspect-ratio: 4/3;
  object-fit: cover;
  margin-bottom: 10px;
}

.service-card .service-title {
  font-size: 16px;
  font-weight: 600;
  margin: 5px 0 10px;
  color: #333;
}

.service-card .service-title a {
  text-decoration: none;
  color: inherit;
  transition: 0.3s;
}

.service-card .service-title a:hover {
  color: #30a753;
}

.service-card .detail-link {
  font-size: 14px;
  color: #30a753;
  text-decoration: none;
}

.service-card .detail-link:hover {
  text-decoration: underline;
}

/* ================== RESPONSIVE CARD DỊCH VỤ ================== */
@media (max-width: 1024px) {
  .service-card {
    width: calc(33.333% - 16.66px);
  }
}

@media (max-width: 768px) {
  .service-card {
    width: calc(50% - 12.5px);
  }
}

@media (max-width: 480px) {
  .service-card {
    width: 100%;
  }
}

/* ================== SIDEBAR MỤC LỤC DỊCH VỤ ================== */
.dv-toc-section.toc-widget {
font-size: 14px;
}

.dv-toc-section.toc-widget h3 {
background-color: #30a753;
color: #fff;
padding: 8px 12px;
border-radius: 6px 6px 0 0;
margin: 0;
font-size: 15px;
}

.dv-toc-list.toc-list {
padding: 10px 12px;
background: #f8f8f8;
border: 1px solid #ddd;
border-top: none;
list-style: none;
margin: 0;
}

/* ================== DANH SÁCH MỤC LỤC ================== */
.dv-toc-list li {
margin-bottom: 6px;
}

.dv-toc-item {
list-style: none;
}

.dv-toc-link {
display: inline-block;
padding: 4px 8px;
text-decoration: none;
color: #333;
border-radius: 4px;
transition: 0.3s;
}

.dv-toc-link:hover,
.dv-toc-link.active {
background: #30a753;
color: #fff;
}

.dv-toc-item.toc-level-1 {
font-weight: bold;
margin-left: 0;
}

.dv-toc-item.toc-level-2 {
margin-left: 10px;
}

.dv-toc-item.toc-level-3 {
margin-left: 20px;
font-size: 13px;
}

.dv-toc-item.toc-level-4 {
margin-left: 30px;
font-size: 12px;
}

.dv-toc-list {
counter-reset: section;
}

.dv-toc-item.toc-level-2 .dv-toc-link::before {
counter-increment: section;
content: counter(section) ". ";
}

.dv-toc-list .dv-toc-item.toc-level-3 {
counter-reset: subsection;
}

.dv-toc-item.toc-level-3 .dv-toc-link::before {
counter-increment: subsection;
content: counter(section) "." counter(subsection) " ";
}

.dv-toc-link.active {
background-color: #30a753;
color: #fff;
font-weight: bold;
}

/* ================== TOC TRÊN MOBILE ================== */
#toc-sidebar-mobile,
#service-categories-mobile {
display: none;
}

#content-col { 
padding: 0 30px 30px;
}

@media (max-width: 768px) {
#toc-sidebar-mobile,
#service-categories-mobile {
  display: block;
  margin-bottom: 25px;
}

#sidebar-desktop {
  display: none !important;
}
}
