/* home-page-hero-container */
.page-hero-container {
    width: 100%;
  }
  .page-hero-container .hero-img-component {
    aspect-ratio: 375/220;
    overflow: hidden;
  }
  .page-hero-container .img-container,
  .page-hero-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .page-hero-container .hero-box {
    width: 100%;
    background: var(--clr-primary);
    min-height: 250px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .page-hero-container .hero-content {
    display: flex;
    flex-direction: column;
    row-gap: 30px;
  }
  .page-hero-container .heading {
    color: var(--clr-white);
    font-size: 24px;
    letter-spacing: 1px;
  }
  .page-hero-container .desc {
    color: var(--clr-white);
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 1px;
  }
  .page-hero-container .small-heading {
    font-size: 18px;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--clr-white);
  }
  @media screen and (min-width: 992px) {
    .page-hero-container {
      position: relative;
    }
    .page-hero-container .hero-img-component {
      aspect-ratio: 1920/700;
      position: relative;
    }
    .home-page.page-hero-container .hero-img-component {
      aspect-ratio: 1920/1080;
      position: relative;
    }
    .page-hero-container .heading {
      font-size: 64px;
    }
    .page-hero-container .hero-img-component::before {
      position: absolute;
      content: "";
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background: var(--clr-black-80);
    }
    .page-hero-container .hero-box {
      position: absolute;
      background: transparent;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
    }
    .page-hero-container .small-heading {
      font-size: 34px;
    }
    .page-hero-container .home-button {
      animation: bounceAnimation linear 3s infinite alternate;
    }
  }
  
  /* featured-courses */
  .single-course {
    width: 100%;
    background: var(--clr-white);
    height: 100%;
    box-shadow: var(--box-shadow-light);
    border-radius: var(--radius);
    transition: var(--transition);
  }
  .single-course:hover {
    transform: translateY(-2px) scale(1.002);
    box-shadow: var(--box-shadow-dark);
  }
  .single-course .img-container {
    aspect-ratio: 355/250;
    overflow: hidden;
  }
  .single-course .img-container img {
    width: 100%;
    height: 100%;
    border-top-left-radius: var(--radius);
    border-top-right-radius: var(--radius);
    object-fit: cover;
    transition: var(--transition);
  }
  .single-course .course-title p {
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    text-transform: capitalize;
    color: var(--clr-primary);
    margin-top: 30px;
    margin-bottom: 30px;
    padding-left: 10px;
    padding-right: 10px;
  }
  @media screen and (min-width: 992px) {
    .single-course .img-container {
      aspect-ratio: 396/300;
    }
    .single-course:hover img {
      transform: scale(1.05) rotateZ(2deg);
    }
  }
  
  /* layout classes */
  .three-column-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
  }
  @media screen and (min-width: 769px) {
    .three-column-layout {
      grid-template-columns: 1fr 1fr;
    }
  }
  @media screen and (min-width: 992px) {
    .three-column-layout {
      grid-template-columns: 1fr 1fr 1fr;
    }
  }
  
  /* contact-promotion */
  .contact-promotion {
    width: 100%;
  }
  .contact-promotion .contact-promo-img {
    position: relative;
    aspect-ratio: 355/400;
    overflow: hidden;
    border-radius: var(--radius);
  }
  .contact-promotion .contact-promo-img::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: var(--clr-black-80);
  }
  .contact-promotion .contact-promo-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--radius);
  }
  .contact-promotion .contact-info-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    row-gap: 40px;
  }
  .contact-promotion .contact-info-container .contact-heading {
    font-size: 30px;
    color: var(--clr-white);
    letter-spacing: 1px;
    text-transform: capitalize;
  }
  @media screen and (min-width: 992px) {
    .contact-promotion .contact-promo-img {
      aspect-ratio: 1250/437;
    }
    .contact-promotion .contact-info-container .contact-heading {
      font-size: 44px;
    }
  }
  
  /* padding classes */
  @media screen and (max-width: 991px) {
    .paddingTopMobile-ten {
      padding-top: 10px !important;
    }
    .paddingTopMobile-twenty {
      padding-top: 20px !important;
    }
    .paddingTopMobile-thirty {
      padding-top: 30px !important;
    }
    .paddingTopMobile-forty {
      padding-top: 40px !important;
    }
    .paddingTopMobile-fifty {
      padding-top: 50px !important;
    }
    .paddingBottomMobile-ten {
      padding-bottom: 10px !important;
    }
    .paddingBottomMobile-twenty {
      padding-bottom: 20px !important;
    }
    .paddingBottomMobile-thirty {
      padding-bottom: 30px !important;
    }
    .paddingBottomMobile-forty {
      padding-bottom: 40px !important;
    }
    .paddingBottomMobile-fifty {
      padding-bottom: 50px !important;
    }
  }
  @media screen and (min-width: 992px) {
    .paddingTopDesktop-ten {
      padding-top: 10px !important;
    }
    .paddingTopDesktop-twenty {
      padding-top: 20px !important;
    }
    .paddingTopDesktop-thirty {
      padding-top: 30px !important;
    }
    .paddingTopDesktop-forty {
      padding-top: 40px !important;
    }
    .paddingTopDesktop-fifty {
      padding-top: 50px !important;
    }
    .paddingTopDesktop-sixty {
      padding-top: 60px !important;
    }
    .paddingTopDesktop-seventy {
      padding-top: 70px !important;
    }
    .paddingTopDesktop-eighty {
      padding-top: 80px !important;
    }
    .paddingTopDesktop-ninety {
      padding-top: 90px !important;
    }
    .paddingTopDesktop-hundred {
      padding-top: 100px !important;
    }
    .paddingBottomDesktop-ten {
      padding-bottom: 10px !important;
    }
    .paddingBottomDesktop-twenty {
      padding-bottom: 20px !important;
    }
    .paddingBottomDesktop-thirty {
      padding-bottom: 30px !important;
    }
    .paddingBottomDesktop-forty {
      padding-bottom: 40px !important;
    }
    .paddingBottomDesktop-fifty {
      padding-bottom: 50px !important;
    }
    .paddingBottomDesktop-sixty {
      padding-bottom: 60px !important;
    }
    .paddingBottomDesktop-seventy {
      padding-bottom: 70px !important;
    }
    .paddingBottomDesktop-eighty {
      padding-bottom: 80px !important;
    }
    .paddingBottomDesktop-ninety {
      padding-bottom: 90px !important;
    }
    .paddingBottomDesktop-hundred {
      padding-bottom: 100px !important;
    }
  }