img{
    height: 200px;
    margin: 10px;
}

.colored-header{
    background-color: #e3ebee;
    margin-bottom: 30px;
}

.circle{
    width:30px;
    height:30px;
    background: #eee;
    padding: 0px 11px 0px 11px;
    border-radius: 100%;
}

.step-detail{
    margin-left: 45px;
}

.table {
    width: 90%; /* Ensure the table is full width */
    border-collapse: collapse; /* Collapse borders */
}
.table .year-semester {
    text-align: center;
    vertical-align: middle;
    width: 15%; /* Adjust as necessary */
    border-bottom: 1px solid black;
    border-left: none;
}
.table .year-semester-last {
    text-align: center;
    vertical-align: middle;
    width: 15%; /* Adjust as necessary */
    border-bottom: none;
    border-left: none;
}
.table .course {
    width: 32%; /* Adjust as necessary */
}
.table .notes {
    width: 15%; /* Adjust as necessary */
}
.table .projects {
    width: 38%; /* Adjust as necessary */
}

.table thead th {
    border-bottom: 1px solid black; /* Hard border for headers */
    border-left: 1px solid black; /* Hard border for the left side of the header */
    background-color: #e3ebee; 
}
.table thead th:first-child {
    border-left: none;
}
.table tbody td {
    text-align: left;
    vertical-align: middle;
    border-bottom: 1px solid #ddd; /* Softer border between rows of the same Year/Semester */
    border-left: 1px solid black; /* 1px border for the left side of the cell */
    padding: 5px; /* Padding inside cells */
}
.table tbody tr.last-of-group td {
    border-bottom: 1px solid black;
}