.home-catblock{ padding: 22px 0; }
.home-catblock + .home-catblock{ padding-top: 8px; }

.cb-head{
  display:flex; align-items:center; justify-content:left; gap:10px;
  margin-bottom:.75rem;
}
.cb-title{
  margin:0; color:#0b4e8a; font-weight:700; letter-spacing:.02em;text-transform: uppercase;
  font-size: clamp(1.1rem,1.6vw,1.5rem);
}
.cb-title a{ color:inherit; text-decoration:none; }
.cb-title a:hover{ text-decoration:underline; }
.cathead-icon {
    width: clamp(28px, 2.4vw, 40px);
    height: auto;
    flex: 0 0 auto;
    display: inline-block;
    object-fit: contain;
    filter: drop-shadow(0 1px 0 rgba(0, 0, 0, .05));
    margin-right: .35rem;
    background: #083970;
    padding: 10px 8px;
    -webkit-border-top-left-radius: 8px;
    -webkit-border-bottom-right-radius: 8px;
    -moz-border-radius-topleft: 8px;
    -moz-border-radius-bottomright: 8px;
    border-top-left-radius: 8px;
    border-bottom-right-radius: 8px;
}
.cb-left{padding-bottom: 0.9rem;
    border-radius: .35rem;}
.cb-left .banner{
  display:block; overflow:hidden;
   background:#fff;
}
.cb-left .banner img{
  width:100%; height: clamp(180px, 30vw, 460px);
  object-fit: cover; display:block;border-radius: .35rem .35rem 0 0;
}
.cb-quicklinks{
  display:flex; gap:.5rem; flex-wrap:wrap; margin-top:1rem;justify-content: center;
}
.cb-quicklinks a{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.45rem .65rem; border-radius:.35rem; font-weight:700;
  color:#0b4e8a; background:#e9f2ff; border:1px solid #d7e6fb;
  text-decoration:none;
}
.cb-quicklinks a:hover{ background:#fff; }

.cb-hotline{
  margin-top:.5rem; color:#fff; font-weight:600;text-align: center;
}
/* Left: bài mới nhất */
.cb-left .cb-feat{
  border:1px solid #e7ecf3;
  border-radius:.35rem;
  overflow:hidden;
  background:#fff;
}
.cb-feat .thumb img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  display:block;
}
.cb-feat .content{
  padding:.9rem;
}
.cb-feat .title{
  margin:0 0 .35rem;
  font-weight:700;
  font-size:1.05rem;
}
.cb-feat .title a{ color:#083970; text-decoration:none; }
.cb-feat .title a:hover{ text-decoration:underline; }
.cb-feat .meta{
  color:#6b7b90; font-size:.9rem; margin-bottom:.5rem;
  display:flex; align-items:center; gap:.35rem;
}
.cb-feat .excerpt{ color:#333; }

/* Right list giữ nguyên */
.cb-right{
  background:#fff; border:1px solid #e7ecf3; border-radius:.35rem; padding:.75rem;
}
.cb-post{ display:grid; grid-template-columns:1fr; gap:.15rem; padding:.5rem 0; }
.cb-post + .cb-post{ border-top:1px solid #eaeef5; }
.cb-post .date{
  position:relative; padding-left:1.35rem; color:#6b7b90; font-size:.9rem;
}
.cb-post .date::before{
  font-family:"bootstrap-icons"; content:"\F214";
  position:absolute; left:0; top:50%; transform:translateY(-50%);
}
.cb-post .title{ margin:0; font-weight:700; font-size:16px; }
.cb-post .title a{ color:#083970; text-decoration:none; }
.cb-post .title a:hover{ text-decoration:underline; }

.cb-more{ text-align:right; margin-top:.5rem; }
.cb-more a{ color:#f00; font-weight:700; }
.cb-more a:hover{ text-decoration:underline; }
.cb-right{
  background:#fff; border:1px solid #e7ecf3; border-radius:.35rem; padding:.75rem;
}
.cb-post{
  display:grid; grid-template-columns: 1fr; gap:.15rem;
  padding:.5rem 0;
}
.cb-post .date{
  position:relative; padding-left:1.35rem;
  color:#6b7b90; font-size:.9rem;
}
.cb-post .date::before{
  font-family: "bootstrap-icons";      /* dùng font BI */
  content: "\F214";                    /* mã unicode của bi-calendar-event (ví dụ) */
  font-size: 1rem;
  position:absolute; left:0; top:50%;
  transform: translateY(-50%);
  line-height:1;
}
.cb-post .title{ font-weight:700; margin:0; font-size: 16px;}
.cb-post .title a{ color:#083970; }
.cb-post + .cb-post{ border-top:1px solid #eaeef5; }

.cb-more{
  text-align:right; margin-top:.5rem;
}
.cb-more a{ color:#f00; font-weight:700; }
.cb-more a:hover{ text-decoration:underline; }


.home-partners{ background:#f3f5f8; }
.section-title{
  margin:0; color:#0b4e8a; font-weight:700; letter-spacing:.02em;
  font-size: clamp(1.1rem,1.6vw,1.5rem);
}

/* ===== Fallback: trước khi Slick init (đẹp như grid) ===== */
.partners-slider{
  --card-h: clamp(110px, 13vw, 140px);
  display:grid; gap:1rem;
  grid-template-columns: repeat(4, minmax(0,1fr));
  overflow:hidden;
  position:relative;
  padding: 0;                 /* không có khoảng thừa */
}
.partners-slider .partner-card{
  display:none;               /* ẩn tất cả mặc định */
  background:#fff; border:1px dashed #d7dde7; border-radius:.75rem;
  min-height: var(--card-h);
  padding: 1.25rem;
  align-items:center; justify-content:center;
  transition: box-shadow .2s ease, border-color .2s ease;
}
.partners-slider .partner-card:nth-child(-n+4){ display:flex; }
.partner-card:hover{ border-style:solid; border-color:#e7ecf3; box-shadow:0 10px 26px rgba(0,0,0,.08); }
.partner-card img{
  display:block; max-width:100%;
  max-height: calc(var(--card-h) * .65);
  object-fit:contain;
}

/* ===== Sau khi Slick init ===== */
.partners-slider.slick-initialized{
  display:block;                  /* slick quản lý layout */
  padding: 0;                /* chừa chỗ cho mũi tên bên TRONG */
}
.partners-slider.slick-initialized .partner-card{ display:flex; }
.partners-slider .slick-list{
  overflow:hidden;               /* để shadow card không bị cắt */
  margin:0;
}
.partners-slider .slick-track{
  display:flex; align-items:stretch; gap:1rem;  /* GAP thật sự giữa các slides */
}
.partners-slider .slick-slide{
  height:auto;                    /* slide cao bằng nhau */
}
.partners-slider .slick-slide > div{ height:100%; }
.partners-slider .slick-slide .partner-card{ height: var(--card-h); }

/* Mũi tên: chỉ hiện sau khi init, nằm gọn trong container */
.partners-slider .slick-prev,
.partners-slider .slick-next{ display:none !important; }
.partners-slider.slick-initialized .slick-prev,
.partners-slider.slick-initialized .slick-next{
  display:flex !important;
  position:absolute; top:50%; transform:translateY(-50%);
  left:auto; right:auto;
  width:44px; height:44px;
  background:transparent; border:0; z-index:2;
}
.partners-slider.slick-initialized .slick-prev{ left:0px; }
.partners-slider.slick-initialized .slick-next{ right:0px; }
.partners-slider .slick-prev::before,
.partners-slider .slick-next::before{ content:none; }
.partners-slider .slick-prev svg,
.partners-slider .slick-next svg{
  width:44px; height:44px; padding:8px; border-radius:999px;
  background:#fff; border:1px dashed #cbd3df; color:#687385;
}

/* Không dùng dots */
.partners-slider .slick-dots{ display:none !important; }

/* Responsive */
@media (max-width: 1199.98px){
  .partners-slider.slick-initialized{ padding: 0 40px; }
}
@media (max-width: 992px){
  .partners-slider{ grid-template-columns: repeat(3, minmax(0,1fr)); }
  .partners-slider.slick-initialized{ padding: 0; }
  .partners-slider.slick-initialized .slick-prev,
  .partners-slider.slick-initialized .slick-next{ display:none !important; }
}
@media (max-width: 768px){
  .partners-slider{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}