#page {
  overflow: hidden;
}

main * {
  box-sizing: border-box;
}

body {
  background: #fff;
  color: #231815;
  letter-spacing: 0.05em;
  line-height: 1.8;
}

.singleBody {
  padding: clamp(3.75rem, 8.9286vw, 6.25rem) 1.25rem;
}

.single__top {
  border-bottom: 1px solid #bbb;
  padding-bottom: 1.5rem;
}

.single__top:has(.singleThumbnail) {
  align-items: center;
  display: grid;
  gap: clamp(1.625rem, 3.5714vw, 2.5rem);
  grid-template-columns: clamp(7.5rem, 13.3929vw, 9.375rem) 1fr;
}

.single__top .single__mainTitle {
  /* Max 36 Min 26 */
  font-size: clamp(1.625rem, 1.121rem + 1.61vw, 2.25rem);
}

@media screen and (max-width: 500px) {
  .single__top .single__mainTitle {
    font-size: 1.375rem;
  }
  .single__top:has(.singleThumbnail) {
    grid-template-columns: 5rem 1fr;
    gap: 1.375rem;
  }
}

.singleThumbnail img {
  border-radius: 0.75rem;
  max-width: 9.375rem;
  width: 100%;
}

.single__contents {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding-top: 1.5rem;

  .wp-block-group__inner-container {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  .wp-block-columns {
    margin: 0;
  }
}

.curriculumList {
  .wp-block-columns {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
  }
  .wp-block-column {
    padding-left: 1.875rem;
    position: relative;
  }

  .wp-block-column::before {
    background: #9a0c1b;
    border-radius: 50%;
    content: "";
    height: 0.625rem;
    position: absolute;
    width: 0.625rem;
    display: block;
    left: 0.625rem;
    top: 0.375rem;
  }

  @media screen and (max-width: 767px) {
    .wp-block-columns {
      grid-template-columns: 1fr;
      gap: 1rem;
    }
  }
}

.edCTA {
  margin: clamp(3.75rem, 7.1429vw, 5rem) auto;
  max-width: 19.5rem;
  width: 100%;
}
