.timetable{
  padding: 60px 10% 40PX;
  text-align: center;
}

.timetable-title{
  font-family: 'Oswald', sans-serif;
  font-size: 3rem;
  margin-bottom: 26px;
  letter-spacing: 2px;
}

/* 포스터 박스 */
.timetable-wrap{
  display: grid;
  grid-template-columns: 1fr 2px 1fr; /* 좌 | 라인 | 우 */
  gap: 30px;
  align-items: stretch;

  max-width: 1100px;
  margin: 0 auto;

  background: white;
  /* border: 1px solid rgba(0,0,0,0.10); */
  /* border-radius: 18px; */
  /* padding: 26px; */
  /* box-shadow: 0 8px 20px rgba(0,0,0,0.06); */
}

.tt-divider{
  background: rgba(0,0,0,0.12);
  border-radius: 2px;
}

.tt-col{
  text-align: left;
}

.tt-heading{
  font-family: 'Oswald', sans-serif;
  font-size: 2rem;
  margin-bottom: 14px;
}

.tt-row{
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 14px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.tt-label{
  font-weight: 800;
  opacity: 0.7;
}

.tt-times{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.tt-times span{
  padding: 10px 14px;
  border: 1px solid rgba(0,0,0,0.12);
  border-radius: 999px;
  font-weight: 900;
}

/* PROGRAM */
.tt-program{
    padding: 60px 0 80px;
    max-width: 1100px;
    margin: 0 auto;
    
  text-align: left;
  /* margin-top: 22px;
  padding-top: 18px; */
}

.program-heading{
  font-family: 'Oswald', sans-serif;
  font-size: 1.6rem;
  letter-spacing: 2px;
  padding-left: 12px;
  border-left: 4px solid #d31145;
  margin-bottom: 12px;
}

.program-list{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 12px;
}

.program-list li{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;

  padding: 14px 14px;
  border: 1px solid rgba(0,0,0,0.12);
  border-radius: 14px;
}

.program-days{
  font-weight: 900;
  opacity: 0.75;
  letter-spacing: 1px;
}

.program-name{
  font-family: 'Oswald', sans-serif;
  font-weight: 900;
  font-size: 1.8rem;
  color: #d31145; /* 포인트 컬러 */
}

/* ✅ 모바일: 세로로 쌓고, 가운데 라인은 가로 라인으로 */
@media (max-width: 768px){
  .timetable{
    padding: 60px 16px 20PX;
  }

  .timetable-title{
    font-size: 2.2rem;
  }

  .timetable-wrap{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 18px;
  }

  .tt-divider{
    height: 2px;
    width: 100%;
  }

  .tt-row{
    grid-template-columns: 90px 1fr;
  }

  .tt-program{
    padding: 60px 16px 20PX;
  }

  .program-list li{
    /* flex-direction: column; */
    /* align-items: flex-start; */
  }

  .program-name{
    font-size: 1.6rem;
  }

  /* MON-FRI 컬럼에서 마지막 row(=Evening) 밑줄 제거 */
    .timetable-wrap > .tt-col:first-child .tt-row:last-of-type{
        border-bottom: none;
    }

    /* SAT 컬럼에서 마지막 row(=Morning) 밑줄 제거 */
    .timetable-wrap > .tt-col:last-child .tt-row:first-of-type{
        border-bottom: none;
    }

}
