.cv-program-table{
    max-width:1400px;
    margin:auto;
    background:#fff;
    border-radius:20px;
    overflow:hidden;
}

.cv-program-header,
.cv-program-row{
    display:grid;
    grid-template-columns:270px 1.9fr 1fr 1.3fr 1.6fr;
}

.cv-program-header{
    font-weight:700;
    font-size:30px;
}

.cv-program-header .cv-col{
  font-size: 18px;
  font-weight: 600;
}

.cv-program-title{
  font-size: 14px;
  font-weight: 600;
}

.cv-program-header .cv-cell{
    padding:34px 40px;
}

.cv-program-row .cv-cell{
    padding:0 40px;
    color: #4c4c4c;
    font-size:14px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
}

.cv-program-header .cv-program-col{
    background:#1d5953;
    color:#fff;
    font-weight:600;
}

.cv-program-header .cv-program-col{
    border-top-left-radius:20px;
    border-top-right-radius:20px;
}

.cv-program-row:last-child .cv-program-name{
    border-bottom-left-radius:20px !important;
    border-bottom-right-radius:20px !important;
}

.cv-program-row .cv-program-col{
    font-weight:600;
}

.cv-program-row{
    min-height:54px;
}

.cv-program-name,
.cv-program-header .cv-col{
  justify-content: left;
  align-items: center;
  display: flex;
  gap: 10px;
  padding-left: 40px;
}
.cv-program-header .cv-col{
  padding-top: 32px;
  padding-bottom: 20px;
  color: #000;
}
.cv-program-name i{
  font-size: 14px;
}

/* Tablet */

@media(max-width:1100px){

.cv-program-table{
    overflow-x:auto;
}

.cv-program-header,
.cv-program-row{
    min-width:1100px;
}

}

/* Mobile */
@media(max-width:767px){

  .cv-program-table{
      background:transparent;
      box-shadow:none;
  }

  .cv-program-header{
      display:none;
  }

  .cv-program-row{
      display:block;
      margin-bottom:20px;
      border-radius:18px;
      overflow:hidden;
      background:#fff;
      min-width:100%;
      box-shadow:0 10px 25px rgba(0,0,0,.05);
  }

  .cv-program-row .cv-program-name{
      border-radius:18px 18px 0 0;
      padding:18px 24px !important;
  }
  
  

  .cv-program-row .cv-cell:not(.cv-program-col){
      display:flex;
      justify-content:space-between;
      padding:18px 24px;
      border-bottom:1px solid #efefef;
      text-align: right;
  }

  .cv-program-row .cv-cell:last-child{
      border-bottom:none;
  }

  .cv-program-row .cv-cell:not(.cv-program-col)::before{
    content:attr(data-label);
    font-weight:700;
    color:#111;
    margin-right:20px;
    text-align: left;
  }
  .cv-program-row:last-child .cv-program-name{
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
}