.mb-30px{
  margin-bottom: 30px;
}

.top-page .page-title {
  color: rgb(33, 44, 104);
  font-size: 24px;
  font-family: NexaHeavy;
  text-transform: uppercase;
}
.promo .icon-promo {
  background: url('../img/berita-promosi/icon-promo.svg') no-repeat;
  width: 32px;
  height: 32px;
  background-size: contain;
  margin-right: 8px;
}
.section-title {
  color: rgb(33, 44, 104);
  font-size: 18px;
  font-family: NexaHeavy;
  text-transform: uppercase;
}
.promo .promo-list {
  margin: 0 -15px;
}

.promo .promo-list img{
  border-radius: 1.2rem;
}

.promo .promo-item-info {
  padding: 15px 15px 50px;
  height: calc(100% - 200px);
  position: relative;
}
.promo .promo-item {
  padding: 0 15px;
  height: 100%;
}
.promo .promo-item-info > a{
  position: absolute; 
  width: auto !important;
  bottom: 15px;
  right: 15px;
  left: 15px;
  padding: 8px 0;
  z-index: 10px;
}
.promo .promo-item .promo-wrap{
  background-color: #fff;
  height: 100%;
  display: flex; 
  flex-direction: column;
}
.promo .material-icons, .news .material-icons {
  font-size: 18px;
}
.promo .material-icons + span, .news .material-icons + span {
  margin-top: 5px;
  margin-left: 5px;
}
.promo .slick-slide{
  height: auto;
}
.promo .promo-item .img-wrapper {
  position: relative;
  overflow: hidden; 
  height: 200px; 
 
} 
.promo .promo-item .img-wrapper img {
  object-fit: cover;
  width: 100%;
  object-position: top left;
  height: 100%;
      height: 200px;
    overflow: hidden;
  /* position: absolute;
  top: 0;
  left: 0;
  object-fit: contain; */
}
.promo .promo-item .date-time {
  color: rgb(157, 155, 155);
  font-size: 11px;
  display: flex;
  flex-direction: row;
  align-items: center; 
  font-family: NexaBold;
}
.promo .promo-item .date-time .date, .promo .promo-item .date-time .time {
  display: flex;
  align-items: center;
  margin-right: 15px;
}
.promo .promo-item .title {
  color: rgb(33, 44, 104);
  font-size: 14px;
  font-family: NexaBold;
  margin: 8px 0;
}
.promo .promo-item .short-description {
  color: rgb(38, 39, 40);
  font-size: 12px;
  font-family: NexaReg;
  margin: 8px 0;

  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;  

}
.btn-detail {
  width: fit-content;
  color: rgb(255, 255, 255);
  font-size: 12px;
  font-family: NexaReg;
  text-align: center;
  border: 0;
  transition: 300ms ease;
  display: block;
  border-radius: 5px;
  background: #212c68;
  padding: 8px 30px;
  padding-top: 10px;
}
.btn-detail:hover{
  background: #4b5baf;
  color: white;
}
.promo .slick-arrow {
  left: -1%;
  right: auto;
  padding: 15px;
}
.promo .slick-arrow.slick-next {
  right: -1%;
  left: auto;
}


.news .icon-news {
  background: url('../img/berita-promosi/icon-news.svg') no-repeat;
  width: 32px;
  height: 32px;
  background-size: contain;
  margin-right: 8px;
}
.news .news-list {
  margin-top: 30px;
  padding: 0;
  background: transparent;
}
.news .news-item {
  display: flex;
  flex-direction: row;
  margin-bottom: 30px;
}
.news .news-item .img-wrapper {
  position: relative;
  border-radius: 5px;
  margin-right: 30px;
  overflow: hidden;
  padding-top: 35%;
  width: 35%;
}
.news .news-item .img-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  object-fit: contain;
  height: 100%;
}
.news .news-item .news-info {
  width: 65%;
}
.news .news-item .date-time {
  color: rgb(157, 155, 155);
  font-size: 11px;
  display: flex;
  flex-direction: row;
  align-items: center; 
  font-family: NexaBold;
}
.news .news-item .date-time .date, .news .news-item .date-time .time {
  display: flex;
  align-items: center;
  margin-right: 15px;
}
.news .news-item .title {
  color: rgb(33, 44, 104);
  font-size: 14px;
  font-family: NexaBold;
  margin: 8px 0;
}
.news .news-item .short-description {
  color: rgb(38, 39, 40);
  font-size: 12px;
  font-family: NexaReg;
  margin: 8px 0;

  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;  

}
.news .news-pagination {
  display: flex;
  justify-content: flex-end;
}
.news .news-pagination .pagination {
  width: fit-content;
}

.news .news-pagination .pagination .page-item {
  
}
.news .news-pagination .pagination .page-item .page-link {
  color: rgb(166, 166, 166);
  font-size: 15px;
  font-family: Cairo-Bold;
  font-weight: bold;
  text-align: center;
  background: white;
  border: none;
  height: 34px;
}
.news .news-pagination .pagination .page-item .page-link .material-icons {
  font-size: 18px;
  color: #000;
}
.news .news-pagination .pagination .page-item.active .page-link {
  background: #fff;
  color: white;
}

.news .news-pagination li.active a{
  background: #212c68;
  color: white;
  padding: 6px 10px 3px;
  display: inline-block;
  vertical-align: sub;
}

.trending .icon-trending {
  background: url('../img/berita-promosi/icon-trending.svg') no-repeat;
  width: 32px;
  height: 32px;
  background-size: contain;
  margin-right: 8px;
}
.trending > div:first-child{
  margin-bottom: 30px;
} 
.trending .trending-list { 
  padding-left: 0px;
  list-style: none;
  margin-bottom: 0;
}
.trending .trending-wrap {
  background-color: #fff;
  padding: 15px;
  border-radius: 5px;
}
.trending .trending-list li {
  font-size: 15px;
  font-family: NexaReg;
  font-weight: normal;
  counter-increment: section;
  margin-bottom: 20px;
  position: relative;
  padding-left: 25px;
  padding-bottom: 10px;
  border-bottom: 1px solid #D8D8D8;
}
.trending .trending-list li:last-child{
  padding-bottom: 0;
  margin-bottom: 0;
  border:0;
}
.trending .trending-list li:before {
  content: counter(section);
  position: absolute;
  left: 0px;
  border-radius: 50%;
  padding-top: 3px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  background-color: #212c68;
  text-align: center;
  color: white;
  font-family: NexaXBold;
  font-size: 10px;
}
.trending .trending-list li a{
  color: rgb(33, 44, 104);
}
.rotate-180 {
  transform: rotate(180deg);
}
.promo-list .slick-track{
  display: flex;
}
 
@media (max-width: 576px) {
  .news .news-item {
    flex-direction: column;
  }
  .news .news-item .img-wrapper {
    width: 100%;
    padding-top: 100%;
    margin-right: 0;
    margin-bottom: 16px;
  }
  .news .news-item .news-info {
    width: 100%;
  }
}


/* New Layout News */

.main-news{
  position: relative;
}

.main-news img{
  width: 100%;
  height: 310px;
  object-fit: cover;
  border-radius: 1.2rem;
}

.main-news .detail-main-news{
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 20px;
  width: 100%;
  /* Gradient overlay: black 90% at bottom to transparent at top */
  background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0) 100%);
  border-bottom-left-radius: 1.2rem;
  border-bottom-right-radius: 1.2rem;
}

.main-news .news-info .date-time{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
  color: #fff;
}

.side-news .date-time{
  color: rgb(157, 155, 155);
  font-size: 11px;
  display: flex;
  flex-direction: row;
  align-items: center;
  font-family: NexaBold;
}

.main-news .date-time .date, .main-news .date-time .time{
  display: flex;
  align-items: center;
}
.main-news .material-icons + span {
  margin-top: 5px;
  margin-left: 5px;
}

.main-news .title{
  font-size: 20px;
  line-height: 24px;
  margin-top: 10px;
  color: #fff;
}

.side-news{
  display: flex;
  gap: 10px;
}

.side-news-wrapper{
  margin-bottom: 10px;
}

.side-news-wrapper:last-of-type{
  margin-bottom: 0;
}

.side-news-img{
  flex: 0 0 100px;
  height: 70px;
}

.side-news-img img{
  width: 100%;
  object-fit: cover;
  height: 100%;
}

.side-news-detail{
  flex: 1;
}

.side-news .material-icons {
  font-size: 18px;
}

.side-news .date{
  display: flex;
  align-items: center;
}


.side-news .material-icons + span {
  margin-top: 5px;
  margin-left: 5px;
}

.side-news .title{
  margin-bottom: 0;
  font-size: 14px;
  color: #212c68;
}

.title-wrapper{
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}