.container {
   height: 100vh;
   width: 730px;
   margin-top: 3rem;
}

/* Splits the sidebar and main content into two columns */
.grid-container {
   display: grid;
   grid-template-columns: 1.2fr 1.5fr;
}

/* Splits the sidebar content into two columns */
.sidebar {
   display: grid;
   grid-template-columns: 65px 1fr;
   margin: 10px 0;
}

/* Align the sidebar hamburger menu */
nav {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: space-between;
   height: 100vh;
   padding: 0 0 0 0.7rem;
}

nav .hamburger {
   margin-right: 1.3rem;
}

/* Space out individual hamburger icons  */
nav ul {
   margin: 0 1rem 3.8rem 0;
}

/* Add scroll to sidebar content */
.sidebar-icons {
   height: 90vh;
   width: 100%;
}

.sidebar-icons ul li {
   display: flex;
   align-items: center;
   margin: 0.2rem 0;
   width: 95%;
   padding: 0.48rem;
   border: 1px solid rgba(255, 255, 255, 0);
}

.sidebar-icons ul li img {
   margin-right: 7px;
}

.sidebar-icons ul, 
.hamburger {
   margin: 0rem 0 4rem;
}

/* Main */
.main-container {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   grid-auto-rows: 120px;
   grid-gap: 5px;
   height: 100%;
   margin: 0 1rem 40vh;
}

.applications {
   margin-top: 1.1rem;
}

.applications p {
   margin: 0 0 1rem 0.6rem;
}

.box {
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: space-between;
   border: 1px solid rgba( 255, 255, 255, 0);
}

.box:hover {
   box-shadow: inset 2px 2px 30px 0 rgba(255, 255, 255, 0.1);
   border: 1px solid rgba(255, 255, 255, 0.4);
}

.box img {
   transform: translateY(35px);
}

.box p {
   align-self: flex-start;
   margin: 10px;
}

.photos {
   grid-column: 1 / 3;
   grid-row: 2 / 4;
}

.groove {
   grid-column: 2 / 4;
}

.calender {
   display: flex;
   align-items: center;
   justify-content: center;
   text-align: center;
}

.calender h3 {
   font-weight: 400;
   font-size: 0.76rem;
   margin-bottom: -6px;
}

.calender h4 {
   font-weight: 300;
   font-size: 2.7rem;
   margin-bottom: -8px;
}

.photos {
   display: flex;
   justify-content: flex-end;
   position: relative;
}

.photos::after {
   content: '';
   position: absolute;
   top: 87%;
   right: 15px;
   width: 21px;
   height: 21px;
   background: url(/images/program-icons/photos.svg) no-repeat center center/cover;
}