/*
 * ================================
 * Title: CEBS Homepage
 * Author: Steve Gotthardt
 * Created: 9/2025
 * ================================
 */

:root {
  --header-height-mobile: 73px;
  --header-height-tablet: 177px;
  --header-height-desktop: 145px;
}

body main#top.content {
  padding-top: var(--header-height-mobile);
  @media screen and (min-width: 1200px) {
    padding-top: var(--header-height-tablet);
  }
  @media screen and (min-width: 1323px) {
    padding-top: var(--header-height-desktop);
  }
}
body:not(.is-scrolled) {
  header.page-header {
    background: rgba(0, 68, 124, 0.8);
  }
}
body header.page-header {
  transition-duration: 500ms;  
}
body.is-scrolled header.page-header {
  transform: translateY(0);
}

.hero-image-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: calc(100vh - var(--header-height-mobile));
  margin:0 !important;
  @media screen and (min-width: 1200px) {
    height: calc(100vh - var(--header-height-tablet));
  }
  @media screen and (min-width: 1323px) {
    height: calc(100vh - var(--header-height-desktop));
  }
  &::after {
    content:"";
    top:0;
    left:0;
    width:100%;
    height:100%;
    position:absolute;
    background: linear-gradient(to bottom, rgba(255,255,255,0) var(--header-height-mobile),rgba(255,255,255,1) 100%);
    @media screen and (min-width: 1200px) {
      background: linear-gradient(to bottom, rgba(255,255,255,0) var(--header-height-desktop),rgba(255,255,255,1) 100%);
    }
  }    
  video.hero-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    -o-object-fit: cover;
    object-fit: cover;
    background-color: black;
    background-image: url("/images/default-source/site-images/placeholders/video-fallbacks/cebs-hp-2026.jpg");
    background-size: cover;
    background-position: center;    
  }
  .hero-content,
  .hero-link-container {
    z-index: 1;
    position:relative;
  }
  .hero-content {
    display:flex;
    flex-direction:column;
    justify-content: center;
    align-items:start;
    height:100%;
    margin:0 24px !important;
    @media screen and (min-width: 768px) {
      margin-left: 48px !important;
      margin-right: 48px !important;
    }
    @media screen and (min-width: 1020px) {
      margin-left: 0 !important;
      margin-right: 0 !important;
    }
    h1 {
      text-align:center;
      line-height:1.2;
      margin-bottom:0;
    }
    img.hero-logo,
    .partner-box {
      max-width:300px;
      @media screen and (min-width: 768px) {
        max-width:400px;
      }
    }
    img.hero-logo {
      width: 100%;  
      position: relative;
      margin:18px auto 48px;
      @media screen and (min-width: 1200px) {
        height:20vh;
      }
    }
    .partner-box {
      margin:0 auto;
      text-align:center;
      p {
        margin-bottom:12px;
        text-transform: uppercase;
      	font-size:11pt;
      	letter-spacing:.5px;
      }
      .partner-logos {
        img {
          display:inline-block;
          width:100px;
          margin:3px 12px;
          @media screen and (min-width: 768px) {
            width:150px;
            margin-top:6px;
            margin-bottom:6px;
          }
        }
      }      
    }
  }  
  .hero-link-container {
    justify-self:end;
    width:100%;
    @media screen and (min-width: 1020px) {
      max-width:none;
    }
    .hero-links {
      display: grid;
      grid-gap:3px;
      @media screen and (min-width: 768px) {
        grid-template-columns:repeat(2, 1fr);
      }
      @media screen and (min-width: 1020px) {
        grid-template-columns:repeat(4, 1fr);
      }
      .button {
        width:100%;
        padding:18px; 
        border-radius:0;
        &:hover,
        &:focus {
          cursor: pointer;
          transform: none;
        }
        .icon {
          margin:0 9px 0 0;
        }
      }
    }
  }
}
.curriculum-area {
  background:none;
  &::before {
    background:none;
  }
  .interstitial__media {
      background: linear-gradient(to bottom, rgba(249,227,206,1) 0%,rgba(249,227,206,0.25) 100%);
  }
  .interstitial__content {
    padding-top:84px;
    padding-bottom:84px;
    p.curriculum-intro {
    color:#00447c;
  }
  }  
}
.tabs.curriculum {
  display:flex;
  @media screen and (min-width:768px) {
    display:block;
  }
  .tabs__tab {
    background:#F6F6F6;
    opacity:1;
    @media screen and (min-width:768px) {
      border:none;
      margin:0 6px 0 0;
      width:47%;
      max-width:450px;
    }
    h3 {
      font-size:20pt;
      font-weight:600;
      color:rgba(0,0,0,.45);
    }
    &.is-active {
      background:white;      
      h3 {
        color:#00447c;
      }
    }    
  }
  .tabs__pane {
    background:white;
    padding:24px;
    border:none;
    text-align:start;
    @media screen and (min-width:1376px) {
      padding:48px;
    }
    .tiled-list--designations {
      margin-top:0 !important;
      .tiled-list__label {
        &.gba__label {
          color:#2A9DCB;
        }
        &.rpa__label {
          color:#9D6BA7;
        }
      }
      &.canada-course {
        .tiled-list__label {
          &.gba__label {
            color:#E27508;
          }
          &.rpa__label {
            color:#839D4D;
          }
        }
      }      
    }
  }
}
.your-future-cards {
  .card__header {
    padding-top:36px;
  }
  .card__body {
    padding-top:18px;
    padding-bottom:18px;
  }
}
.email-container {
  background:#2A9DCB;
  text-align:center;  
  padding:36px 24px;
  p {
    color:white;
  }
  .button .icon {
    margin:0 9px 0 0;
  }
}
.partner-logos img {
  pointer-events:none;
}

/* News Items */
.resourceList.blogs ul.item-list {
  list-style: none;
  margin-left: 0;
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(550px, 1fr));
  grid-gap: 36px;
  .item-list:not(:last-child) {
    margin-bottom: 48px;
  }
  .item-list + .button {
    margin-top: -24px;
  }
  .item-list__item {
    background: #FDFDFD;
    border-top: 3px solid #2A9DCB;
    padding: 24px;
  }
  .item-list__item + .item-list__item {
    margin-top: 0;
  }
  .item-list__link {
    position: relative;
    color: #444444;  
    @media screen and (min-width:768px) {
      display: grid;
      grid-template-columns: 284px 1fr;
      grid-column-gap: 24px;
      align-items: center;
    }
  }
  .item-list__link:hover,
  .item-list__link:focus {
    color: #444444;
  }
  .item-list__media {
    display: block;
    max-width:none;
    float:none;
    margin:0 auto 18px;
    overflow: hidden;
    width:100%;
    @media screen and (min-width:768px) {
      margin:0;
    }
  }
  .item-list__media img {
    transition: transform 0.15s ease-out;
  }
  .item-list__link:hover .item-list__media img,
  .item-list__link:focus .item-list__media img {
    transform: scale(1.04);
  }
  .item-list__content {
    overflow: hidden;
  }
  .item-list__title {
    font-family: "Barlow Semi Condensed", "Roboto", Helvetica, Arial, sans-serif;
    font-size: 25px;
    line-height: 1.3;
    margin: 0;
    color: #2A9DCB;
    transition: color 0.15s ease-out;
  }
  .item-list__title-bold {
    font-weight: 700;
  }
  .item-list a.item-list __title:hover,
  .item-list a.item-list __title:focus,
  .item-list__link:hover .item-list__title,
  .item-list__link:focus .item-list__title {
    color: #58599B;
  }
  .item-list__date {
    color: #666;
    display: block;
    font-weight:700;
    font-size:inherit;
    line-height:inherit;
  }
  .item-list__title + .item-list__date {
    margin-bottom: 6px;
  }
  .item-list__featured {
    font-size: 14px;
    line-height: 24px;
    /* color: #9D6BA7; */
    color: #83598B;
    text-transform: uppercase;
    font-weight: 700;
  }
  .item-list__featured + .item-list__title {
    margin-top: 12px;
  }
  .item-list__description {
    margin: 6px 0 0;
  }
  .item-list--grid .item-list__media {
    width: 100%;
    max-width: 100%;
    float: none;
    margin: 0 auto 12px;
  }
  .item-list--grid .item-list__media img {
    width: 100%;
  }
  .item-list--grid .item-list__item + .item-list__item {
    margin-top: 0;
  }
  .item-list--compact .item-list__item {
    padding: 12px;
  }
  .item-list--compact .item-list__item + .item-list__item {
    margin-top: 12px;
  }
  .item-list--borderless .item-list__item {
    border-top: 0;
  }
}