/* ******************************** */
/*     HOMEPAGE ROTATING BANNER     */
/* ******************************** */
.homepage-hero-banner,
.landing-page-header-banner {
   position: relative;
}

.landing-page-header-banner::after {
   content: "";
   background: rgb(111, 141, 164);
   background: linear-gradient(90deg, rgba(111, 141, 164, 0.7973783263305322) 0%, rgba(113, 115, 170, 0.8029805672268908) 100%);
   width: 100%;
   height: .5rem;
   display: block;
}

.homepage-hero-banner .splide__arrows {
   position: absolute;
   top: 50%;
   transform: translateY(-50%);
   left: 0;
   right: 0;
   z-index: 1;
   display: flex;
   justify-content: space-between;
}

.homepage-hero-banner .splide__arrow svg {
   display: none;
}

.homepage-hero-banner .splide__arrow {
   display: flex;
   justify-content: center;
   align-items: center;
   height: 4.5rem;
   width: 1.5rem;
   border-radius: .25rem;
   border: none;
   background-color: rgba(34, 38, 59, 0.75);
   color: var(--dark-content);
}

.homepage-hero-banner:hover .splide__arrow {
   background-color: rgba(34, 38, 59, 0.9);
}

.homepage-hero-banner .splide__pagination {
   position: absolute;
   bottom: 0.1rem;
   left: 0;
   right: 0;
   gap: .25rem;
}

.homepage-hero-banner .splide__pagination__page.is-active {
   background-color: var(--base-01);
   width: 1.5rem
}

.homepage-hero-banner .splide__pagination__page {
   height: .25rem;
   width: .5rem;
   border-radius: .125rem;
   border: none;
   background-color: rgba(255, 255, 255, 0.2);
   transition: var(--five);
}

.homepage-hero-banner .splide__list {
   background-color: var(--primary);
}

.homepage-hero-banner .splide__slide {
   background-size: cover;
   overflow: hidden;
   height: calc(100vh - 4rem - 1.5rem - 16rem);
   display: flex;
   align-content: center;
   flex-wrap: wrap;
   text-align: center;
   justify-content: center;
}

.landing-page-header-banner .wrapper {
   background-size: cover;
   overflow: hidden;
   height: calc(100vh - 4rem - 1.5rem - 16rem);
   padding: 2.0rem 2.5rem;
   display: flex;
   align-content: center;
   flex-wrap: wrap;
   text-align: center;
   justify-content: center;
    padding: .75rem;
}

.iic-learning-banner .homepage-hero-banner__image {
   width: 100%;
   height: 100%;
   background:
      linear-gradient(to bottom, transparent 75%, rgba(0, 0, 0, 0.8) 100%),
      url('https://iic-365-dev.cadmore.media/Content?applicationId=fca4ca04-bfe7-44e2-829c-299dabd57fea&fileName=homepage-mcewan-hall');
   background-size: cover;
   background-position: center top;
}



.protecting-heritage .homepage-hero-banner__image {
   width: 100%;
   height: 100%;
   background:
      linear-gradient(to bottom, transparent 75%, rgba(0, 0, 0, 0.8) 100%),
      url('https://iic-365-dev.cadmore.media/Content?applicationId=fca4ca04-bfe7-44e2-829c-299dabd57fea&fileName=homepage-tiles');
   background-size: cover;
   background-position: center top;
}

.net-zero-banner .homepage-hero-banner__image {
   width: 100%;
   height: 100%;
   background-image:
      linear-gradient(to bottom, transparent 75%, rgba(0, 0, 0, 0.8) 100%),
      url('https://iic-365-dev.cadmore.media/Content?applicationId=fca4ca04-bfe7-44e2-829c-299dabd57fea&fileName=homepage-net-zero');
   background-position: center;
   background-size: cover;
}

.lima-on-demand .homepage-hero-banner__image  {
   width: 100%;
   height: 100%;
   background-image:
      linear-gradient(to bottom, transparent 75%, rgba(0, 0, 0, 0.8) 100%),
      url('https://iic-365-dev.cadmore.media/Content?applicationId=fca4ca04-bfe7-44e2-829c-299dabd57fea&fileName=homepage-lima-dancers');
   background-position: center;
   background-size: cover;
}

.landing-page-header-banner .wrapper {
   background-image:
      url('/Content?applicationId=fca4ca04-bfe7-44e2-829c-299dabd57fea&fileName=background-1920x1120.jpg');
   background-size: cover;
}

.homepage-hero-banner .content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: absolute;
    bottom: .75rem;
    left: .75rem;
    right: .75rem;
    background-color: var(--base-01);
    color: var(--primary);
    border-radius: .5rem;
    padding: .75rem;
}

.homepage-hero-banner h2 {
    color: var(--dark-01);
   font-size: var(--text-base);
   font-weight: 500;
   text-wrap: balance;
   margin-bottom: .5rem;
}

.landing-page-header-banner h2 {
   color: var(--dark-content);
   font-size: var(--text-base);
   font-weight: 500;
   text-wrap: balance;
   text-transform: uppercase;
   letter-spacing: .5px;
   margin-bottom: .5rem;
}

.homepage-hero-banner h1 {
   color: var(--primary);
   font-size: var(--text-6xl);
   text-wrap: balance;
   line-height: 1.3;
}

.landing-page-header-banner h1 {
   color: #F0C51F;
   font-size: var(--text-6xl);
   text-wrap: balance;
   line-height: 1.3;
}

.homepage-hero-banner p,
.landing-page-header-banner p {
   display: none;
}

.homepage-hero-banner .buttons {
   margin-top: 2rem;
}

.homepage-hero-banner .btn {
   text-decoration: none;
   height: 3rem;
   display: flex;
   border-radius: .5rem;
   justify-content: center;
   align-items: center;
   font-size: var(--text-lg);
   font-weight: 600;
   padding: 0 1.5rem;
   width: fit-content;
   margin-left: auto;
   margin-right: auto;
}

.homepage-hero-banner .btn.primary {
        background-color: var(--primary);
        color: var(--primary-content);
}

.homepage-hero-banner .btn.primary:hover {
   background-color: var(--base-05);
}

/* ******************************** */
/*     HOMEPAGE CONTENT CAROUSEL    */
/* ******************************** */
.course-history-carousel-container .carousel,
.watch-history-carousel-container .carousel {
   padding: .5rem .75rem;
   border-radius: .5rem;
   overflow: hidden;
}

.course-history-carousel-container .carousel {
   background-color: rgb(0 176 173 / 11%);
   border: 1px solid rgb(0 176 173 / 30%);
}

.watch-history-carousel-container .carousel {
   background-color: rgb(36 40 104 / 11%);
   border: 1px solid rgb(36 40 104 / 30%);
}

.course-history-carousel-container .content-carousel .splide__track::after,
.watch-history-carousel-container .content-carousel .splide__track::after {
   display: none;
}

.horizontal-full.history-carousel {
   padding: 0;
}

.history-carousel .carousel {
   border-radius: 0;
   border-left: 0;
   border-right: 0;
}

/* ******************************** */
/*      HOMEPAGE FEATURED PERSON    */
/* ******************************** */
.horizontal-full.featured-person {
   padding-top: 0;
   padding-bottom: 0;
}

.featured-person .wrapper {
   background-size: cover;
   border-radius: .5rem;
   overflow: hidden;
   padding: 2.0rem 2.5rem;
   display: flex;
   align-content: center;
   flex-wrap: wrap;
   text-align: center;
   justify-content: center;
   background-image: url('/Content?applicationId=25d6b416-1480-486f-bc43-14a214991993&fileName=background-1920x1120.jpg');
   background-size: cover;
}

.featured-person .person-img-wrapper {
   box-shadow: 0 4px 30px rgba(0, 0, 0, 0.66);
   padding: 0.75rem;
   margin-left: auto;
   margin-right: auto;
   border-radius: 100%;
   margin-bottom: 1rem;
   max-width: 28rem;
   max-height: 28rem;
   position: relative;
   width: 100%;
   height: 100%;
   aspect-ratio: 1 / 1;
   overflow: hidden;
}

.featured-person .person-img {
   position: absolute;
   bottom: 0;
   left: 0;
   right: 0;
   width: 100%;
   top: 0;
   height: 100%;
   object-fit: cover;
   padding: .75rem;
   border-radius: 100%;
}

.featured-person h3 {
   color: var(--dark-content);
   font-size: var(--text-base);
   font-weight: 500;
   text-wrap: balance;
   text-transform: uppercase;
   letter-spacing: .5px;
   margin-bottom: .5rem;
}

.featured-person h2 {
   color: #F0C51F;
   font-size: var(--text-6xl);
   text-wrap: balance;
   line-height: 1.3;
}

.featured-person p {
   display: none;
}

.featured-person .forbes-prize-tag {
   background-color: var(--base-05);
   width: fit-content;
   border-radius: .25rem;
   color: var(--primary);
   padding: 0 .5rem;
   font-size: var(--text-sm);
   font-weight: 600;
}

.featured-person .btn {
   margin-top: 1.5rem;
   background-color: var(--dark-content);
   color: var(--dark-01);
   text-decoration: none;
   height: 3rem;
   display: flex;
   border-radius: .5rem;
   justify-content: center;
   align-items: center;
   font-size: var(--text-base);
   font-weight: 600;
   padding: 0 1.5rem;
   width: fit-content;
   margin-left: auto;
   margin-right: auto;
}

.featured-person .btn:hover {
   background-color: var(--base-05);
}

/* ******************************** */
/*         HOMEPAGE SIGN UP         */
/* ******************************** */
.horizontal-full.sign-up,
.horizontal-full.login-message {
   padding-top: 0;
}

.horizontal-full.login-message {
   padding: 0;
}

.sign-up .wrapper {
   background-size: cover;
   border-radius: .5rem;
   overflow: hidden;
   padding: 2.0rem 2.5rem;
   display: flex;
   align-content: center;
   flex-wrap: wrap;
   text-align: center;
   justify-content: center;
   background-color: rgb(36 40 104 / 20%);
   background-size: cover;
   gap: 1rem;
}

.login-message .wrapper {
   border-radius: 0;
   background-color: var(--base-content);
   color: white;
   padding: .5rem 2.5rem;
}

.sign-up .sign-up-content,
.login-message .sign-up-content {
   flex: 1 0 100%;
}

.sign-up h2,
.login-message h2 {
   color: var(--primary-focus);
   font-size: var(--text-xl);
   line-height: 1.3;
   font-weight: 600;
}

.sign-up p {
   margin-top: 1rem;
   font-size: var(--text-sm);
}

.login-message p {
   margin-top: 0;
   text-align: center;
   font-size: var(--text-sm);
}

.login-message-button-row {
   display: flex;
   gap: 1rem;
}

.sign-up a {
   font-size: var(--text-sm);
   text-decoration: none;
   color: var(--primary-focus);
   font-weight: 600;
}

.sign-up a i {
   margin-left: .25rem;
   position: relative;
   top: 1px;
}

.login-message-button-row a:first-of-type {
   margin-top: 0;
   background-color: var(--base-01);
   height: 2.5rem;
   display: flex;
   border-radius: .5rem;
   justify-content: center;
   align-items: center;
   font-weight: 600;
   padding: 0 1rem;
   border: 1px solid var(--base-01);
   text-decoration: none;
   color: var(--primary);
}

.login-message-button-row a:first-of-type:hover {
   background-color: var(--base-05);
}

.login-message-button-row a:last-of-type {
   margin-top: 0;
   background-color: transparent;
   height: 2.5rem;
   display: flex;
   border-radius: .5rem;
   justify-content: center;
   align-items: center;
   font-weight: 600;
   padding: 0 1rem;
   border: 1px solid var(--base-01);
   text-decoration: none;
   color: var(--base-01);
}

.login-message-button-row a:last-of-type:hover {
   background-color: var(--base-05);
}

.login-message a i {
   margin-right: .5rem;
}

.sponsor-section {
   background-color: var(--base-05);
}

.sponsor-section h2 {
   font-weight: 600;
   font-size: var(--text-lg);
   display: flex;
   justify-content: center;
   flex-wrap: wrap;
   gap: .5rem;
   align-items: center;
}

.sponsor-img {
   width: 10rem;
}

@media only screen and (min-width: 360px) {
   /* ******************************** */
   /*  360PX HOMEPAGE ROTATING BANNER  */
   /* ******************************** */

   /* ******************************** */
   /*  360PX HOMEPAGE CONTENT CAROUSEL */
   /* ******************************** */

   /* ******************************** */
   /*  360PX HOMEPAGE FEATURED PERSON  */
   /* ******************************** */

   /* ******************************** */
   /*      360PX HOMEPAGE SIGN UP      */
   /* ******************************** */
}

@media only screen and (min-width: 500px) {

   /* ******************************** */
   /*  500PX HOMEPAGE ROTATING BANNER  */
   /* ******************************** */
   .homepage-hero-banner .splide__slide,
   .landing-page-header-banner .wrapper {
      height: calc(100vh - 4rem - 1.5rem - 18rem);
   }

   .homepage-hero-banner p {
      display: block;
      color: var(--dark-01);
      margin-top: 1rem;
      line-height: 1.5;
      text-wrap: balance;
   }

   .landing-page-header-banner p {
      display: block;
      color: var(--dark-content);
      margin-top: 1rem;
      line-height: 1.5;
      text-wrap: balance;
   }

   /* ******************************** */
   /* 500PX HOMEPAGE CONTENT CAROUSEL  */
   /* ******************************** */
   /* ******************************** */
   /* 500PX HOMEPAGE FEATURED PERSON   */
   /* ******************************** */
   /* ******************************** */
   /*      500PX HOMEPAGE SIGN UP      */
   /* ******************************** */
   .sponsor-section h2 {
      gap: 1.5rem;
   }
}

@media only screen and (min-width: 640px) {

   /* ******************************** */
   /*  640PX HOMEPAGE ROTATING BANNER  */
   /* ******************************** */
   .homepage-hero-banner .splide__arrow {
      width: 2rem;
   }

   .landing-page-header-banner .wrapper {
      padding-left: 3.25rem;
      padding-right: 3.25rem;
   }

   .homepage-hero-banner .splide__slide,
   .landing-page-header-banner .wrapper {
      min-height: 424px;
      max-height: 608px;
   }

   .homepage-hero-banner {
      margin-bottom: 0;
   }

   /* ******************************** */
   /* 640PX HOMEPAGE CONTENT CAROUSEL  */
   /* ******************************** */
   .course-history-carousel-container .carousel,
   .watch-history-carousel-container .carousel {
      padding: .75rem 1.25rem;
   }

   .horizontal-full.history-carousel {
      padding-bottom: 0;
   }

   /* ******************************** */
   /* 640PX HOMEPAGE FEATURED PERSON   */
   /* ******************************** */
   .featured-person .wrapper {
      align-items: center;
      justify-content: space-between;
   }

   .featured-person .wrapper>* {
      flex: 0 0 45%;
      margin: 0;
   }

   .featured-person .person-content {
      text-align: left;
   }

   .featured-person .btn {
      margin-left: 0;
      margin-right: 0;
   }

   /* ******************************** */
   /*      3640PX HOMEPAGE SIGN UP     */
   /* ******************************** */
}

@media only screen and (min-width: 768px) {

   /* ******************************** */
   /*  768PX HOMEPAGE ROTATING BANNER  */
   /* ******************************** */


   .landing-page-header-banner .wrapper {
      height: fit-content;
      min-height: 24rem;
   }

   .homepage-hero-banner .content {
      height: 40%;
   }

   .homepage-hero-banner .homepage-hero-banner__image {
      height: 100%;
   }

   .homepage-hero-banner__image {
      height: 60%;
   }

   /* ******************************** */
   /* 768PX HOMEPAGE CONTENT CAROUSEL  */
   /* ******************************** */
   /* ******************************** */
   /* 768PX HOMEPAGE FEATURED PERSON   */
   /* ******************************** */
   .featured-person p {
      display: block;
      color: var(--dark-content);
      line-height: 1.5;
      overflow: hidden;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 4;
   }

   /* ******************************** */
   /*      768PX HOMEPAGE SIGN UP      */
   /* ******************************** */
}

@media only screen and (min-width: 1024px) {

   /* ******************************** */
   /*  1024PX HOMEPAGE ROTATING BANNER */
   /* ******************************** */

   .homepage-hero-banner .splide__slide {
      position: relative;
   }

   .homepage-hero-banner .content {
      position: absolute;
      bottom: 2rem;
      left: 2rem;
      height: unset;
      border-bottom: none;
      text-align: left;
      width: 896px;
      background-color: var(--base-01) !important;
      border-radius: .5rem;
      padding: 1.25rem;
   }

   .homepage-hero-banner .homepage-hero-banner__image {
      height: 100%;
   }

   .homepage-hero-banner,
   .landing-page-header-banner {
      padding: 0;
   }

   .homepage-hero-banner h2 {
      color: var(--dark-01);
      text-transform: none;
      font-weight: 500;
      margin-bottom: 0.25rem;
      font-size: var(--text-sm);
   }

   .homepage-hero-banner p {
      color: var(--dark-01);
      font-size: var(--text-base);
      margin-top: 0rem;
   }

   .homepage-hero-banner h1 {
      color: var(--primary)
   }

   .homepage-hero-banner .buttons {
      margin-top: 1.25rem;
   }

   .homepage-hero-banner .btn.primary {
      margin-left: 0;
      background-color: var(--primary);
      color: var(--primary-content);
      border: 0px;
   }

   .homepage-hero-banner .btn.primary:hover {
      background-color: var(--primary-focus);
   }

   .homepage-hero-banner__image {
      height: 100%;
   }

   .homepage-hero-banner .splide__pagination {
      bottom: -1.25rem;
   }

   .homepage-hero-banner .splide__pagination__page {
      background-color: var(--dark-01);
      opacity: 0.66;
   }

   .homepage-hero-banner .splide__pagination__page.is-active {
      background-color: var(--dark-01);
      opacity: 1;
   }

   /* ******************************** */
   /* 1024PX HOMEPAGE CONTENT CAROUSEL */
   /* ******************************** */
   /* ******************************** */
   /* 1024PX HOMEPAGEFEATURED PERSON   */
   /* ******************************** */
   .featured-person .wrapper {
      gap: 4rem;
   }

   .featured-person .person-img-wrapper {
      flex: 0 0 24rem;
   }

   .featured-person .person-content {
      flex: 1 0;
   }

   /* ******************************** */
   /*     1024PX HOMEPAGE SIGN UP      */
   /* ******************************** */
}

@media only screen and (min-width: 1280px) {

   /* ******************************** */
   /*  1280PX HOMEPAGE ROTATING BANNER */
   /* ******************************** */

   .landing-page-header-banner .wrapper {
      max-height: calc(50vh - 6rem);
      height: calc(50vh - 6rem);
   }

   /* ******************************** */
   /* 1280PX HOMEPAGE CONTENT CAROUSEL */
   /* ******************************** */

   /* ******************************** */
   /* 1280PX HOMEPAGEFEATURED PERSON   */
   /* ******************************** */

   /* ******************************** */
   /*     1280PX HOMEPAGE SIGN UP      */
   /* ******************************** */
   .sign-up .wrapper {
      align-items: center;
      padding: 1.0rem 1.5rem 1.0rem 2.5rem;
   }

   .sign-up .sign-up-content,
   .login-message .sign-up-content {
      flex: 1 0;
      text-align: left;
   }

   .sign-up p {
      margin-top: .5rem;
   }

   .login-message a {
      color: white;
      font-weight: 600;
   }

   .sign-up a {
      margin-top: 0;
      background-color: var(--base-01);
      height: 2.5rem;
      display: flex;
      border-radius: .5rem;
      justify-content: center;
      align-items: center;
      font-weight: 600;
      padding: 0 1rem;
      border: 1px solid var(--base-01);
   }

   .sign-up a i {
      margin-left: .5rem;
   }

   .sign-up a:hover {
      background-color: var(--base-05);
   }

   .sponsor-section h2 {
      font-size: var(--text-xl);
   }
}

@media only screen and (min-width: 1536px) {

   /* ******************************** */
   /*  1536PX HOMEPAGE ROTATING BANNER */
   /* ******************************** */

   .homepage-hero-banner .splide__slide {}

   .landing-page-header-banner .wrapper {
      min-height: 26rem;
   }

    .homepage-hero-banner .content {
      bottom: 4rem;
      left: calc((100vw - 1440px) / 2);
   }

   /* ******************************** */
   /* 1536PX HOMEPAGE CONTENT CAROUSEL */
   /* ******************************** */

    .content-carousel .splide__track {
        overflow: auto !important;
    }
    .homepage .horizontal-full.sponsor-section .wrapper {
        margin: 0 auto;
        padding: 1.5rem 0;
    }

   .homepage .horizontal-full {
      padding: 0;
   }

   .homepage .horizontal-full .wrapper {
      max-width: 1440px;
      margin: 3rem auto;
   }

   .content-carousel header {
      padding-bottom: 1.5rem;
   }

   .course-history-carousel-container .carousel, .watch-history-carousel-container .carousel {
      margin: -.75rem -1.25rem;
      border-radius: .5rem;
   }

   .course-history-carousel-container .carousel {
      border-left: 1px solid rgb(0 176 173 / 30%);
      border-right: 1px solid rgb(0 176 173 / 30%);
   }

   .watch-history-carousel-container .carousel {
      border-left: 1px solid rgb(36 40 104 / 30%);
      border-right: 1px solid rgb(36 40 104 / 30%);
   }


   /* ******************************** */
   /* 1536PX HOMEPAGE FEATURED PERSON   */
   /* ******************************** */
   .featured-person h2 {
      font-size: var(--text-7xl);
   }

   .featured-person h3 {
      font-size: var(--text-lg);
   }

   .featured-person p {
      font-size: var(--text-lg);
   }

   /* ******************************** */
   /*     1536PX HOMEPAGE SIGN UP      */
   /* ******************************** */
}