/* BEGIN COMMENCEMENT LANDING CSS */

.banner-section .banner-wrapper .banner-left-wrapper::after {
    background: none !important;
}

.upcoming-event--wrapper .eventProgramsSwiper .btn.btn--send {
    display: inline-flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.upcoming-event--wrapper .eventProgramsSwiper .btn.btn--send .btn--arrow {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    position: static !important;
    top: auto !important;
    transform: none !important;
}

.upcoming-event--wrapper .eventProgramsSwiper .btn.btn--send .btn--arrow img {
    display: block !important;
    position: static !important;
    top: auto !important;
    transform: none !important;
    translate: none !important;
    rotate: none !important;
    scale: none !important;

    margin: 0 !important;
}

.upcoming-event--wrapper .eventProgramsSwiper .swiper-slide:not(.swiper-slide-active) .btn--arrow,
.upcoming-event--wrapper .eventProgramsSwiper .swiper-slide:not(.swiper-slide-active) .btn--arrow img {
    position: static !important;
    top: auto !important;
    transform: none !important;
    translate: none !important;
}

.swiper,
.swiper-wrapper,
.swiper-slide,
[data-marquee],
.marquee {
    max-width: 100%;
}

.graundbreak-work-section #inlineYoutubeWrapper {
    position: relative;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    border-radius: 28px;
    overflow: hidden;
}

.graundbreak-work-section #inlineYoutubeWrapper .video-cover-image {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 6;
    object-fit: cover;
}

.graundbreak-work-section #inlineYoutubeWrapper .coming-soon-overlay {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    padding: clamp(16px, 3vw, 32px);
}

.graundbreak-work-section #inlineYoutubeWrapper .coming-soon-card {
    width: min(92%, 860px);
    padding: clamp(16px, 3.2vw, 34px);
    border-radius: clamp(18px, 3vw, 28px);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    background: rgba(240, 235, 220, 0.15);
    border: 1px solid rgba(0, 0, 0, 0.06);
    text-align: center;
}

.graundbreak-work-section #inlineYoutubeWrapper .coming-soon-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 22px;
    border-radius: 999px;
    font-weight: 700;
    line-height: 1;
    color: #e5c687;
    font-size: 34px;
    margin-bottom: clamp(10px, 1.6vw, 18px);
}

.graundbreak-work-section #inlineYoutubeWrapper .coming-soon-text {
    margin: 0;
    color: #0B2D4B;
    font-weight: 500;
    line-height: 1.35;
    font-size: clamp(14px, 1.6vw, 22px);
    max-width: 42ch;
    margin-inline: auto;
}

@media (max-width: 640px) {
    .graundbreak-work-section #inlineYoutubeWrapper {
        border-radius: 18px;
    }

    .graundbreak-work-section #inlineYoutubeWrapper .video-cover-image {
        aspect-ratio: 16 / 10;
    }

    .graundbreak-work-section #inlineYoutubeWrapper .coming-soon-card {
        width: min(94%, 560px);
    }
}

@media (max-width: 380px) {
    .graundbreak-work-section #inlineYoutubeWrapper .coming-soon-pill {
        padding: 10px 18px;
    }
}

.section-title-box .section-title-right-cont p {
    max-width: unset !important;
}

.cover-five {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

.five-year-hero-fix {
    /* You can tweak these safely */
    --hero-maxw: 1800px;
    --hero-pad: clamp(16px, 2vw, 44px);
    --hero-gap: clamp(18px, 2vw, 44px);
    --hero-minh: clamp(560px, 50vh, 900px);
    --right-img-maxw: 760px;
}

.five-year-hero-fix .custom-container-full-cover {
    width: 100%;
    max-width: var(--hero-maxw);
    margin-inline: auto;
    padding-inline: var(--hero-pad);
    box-sizing: border-box;
}

.five-year-hero-fix .banner-wrapper {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
    gap: var(--hero-gap);
    align-items: stretch;
    min-height: var(--hero-minh);
    width: 100%;
    box-sizing: border-box;
    overflow: visible;
}

@media (max-width: 991.98px) {
    .five-year-hero-fix .banner-wrapper {
        grid-template-columns: 1fr;
        min-height: unset;
    }
}

.five-year-hero-fix .banner-left-wrapper {
    min-height: var(--hero-minh);
    border-radius: 0;
    overflow: hidden;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #154677;
}

@media (max-width: 991.98px) {
    .five-year-hero-fix .banner-left-wrapper {
        min-height: clamp(360px, 42vh, 520px);
    }
}

@media (min-width: 1600px) {
    .five-year-hero-fix .banner-left-wrapper {
        background-position: center top;
        background-size: contain;
    }
}

.five-year-hero-fix .banner-right-cont {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    overflow: visible;
}

.five-year-hero-fix .banner-right-slide-area {
    width: 100%;
    min-width: 0;
    overflow: visible;
}

.five-year-hero-fix .banner-slider-wrapper,
.five-year-hero-fix .bannerTextSwiper {
    width: 100%;
    min-width: 0;
}

.five-year-hero-fix .swiper-wrapper,
.five-year-hero-fix .swiper-slide {
    min-width: 0;
}

.five-year-hero-fix .banner-slide--item h2 {
    font-size: clamp(28px, 2.1vw, 44px);
    line-height: 1.15;
    overflow-wrap: anywhere;
    word-break: normal;
}

.five-year-hero-fix .banner-slide--item p {
    font-size: clamp(14px, 0.95vw, 18px);
    line-height: 1.35;
}

.five-year-hero-fix .banner-right-modal-image-area {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    overflow: visible;
}

.five-year-hero-fix .banner-right-modal-image-area .hero-image-reveal {
    width: min(100%, var(--right-img-maxw));
}

.five-year-hero-fix .banner-right-modal-image-area img {
    width: 100%;
    height: auto;
    display: block;
    max-width: 100%;
    aspect-ratio: 626 / 322;
    object-fit: cover;
}

.five-year-hero-fix .hero-image-reveal {
    will-change: transform;
    backface-visibility: hidden;
    transform: translateZ(0);
}

.five-year-hero-fix .banner-pagination {
    margin-top: clamp(10px, 1vw, 18px);
    position: relative;
    z-index: 2;
}

@media (min-width: 1600px) {
    .five-year-hero-fix .banner-wrapper {
        min-height: clamp(640px, 52vh, 880px);
    }
}

.five-year-hero-fix {
    --hero-gap: 0px;
}

.five-year-hero-fix .banner-wrapper {
    gap: 0 !important;
    column-gap: 0 !important;
}

.five-year-hero-fix .banner-left-wrapper,
.five-year-hero-fix .banner-right-cont {
    margin: 0 !important;
    padding: 0 !important;
}

.five-year-hero-fix .banner-right-slide-area {
    padding-left: 0 !important;
}

.five-year-hero-fix .custom-container-full-cover {
    max-width: var(--hero-maxw, 1800px);
    margin-inline: auto;
    box-sizing: border-box;
}

.five-year-hero-fix .banner-wrapper {
    gap: 0 !important;
    column-gap: 0 !important;
}

.five-year-hero-fix .banner-right-slide-area {
    padding-left: clamp(18px, 2.3vw, 56px) !important;
    padding-right: clamp(14px, 1.6vw, 36px) !important;
    box-sizing: border-box;
}

.five-year-hero-fix .banner-right-slide-area .banner-slider-wrapper {
    padding: 0 !important;
}

.five-year-hero-fix .banner-right-modal-image-area {
    box-sizing: border-box;
}

.banner-section {
    background-color: #154677 !important;
}

.banner-right-slide-area {
    background-color: #e5c687 !important;
}

/* Force wrapper alignment */
.startup-innovation--wrapper {
    display: flex !important;
    align-items: flex-start !important;
}

/* Kill any vertical offset on image side */
.startup-innovation-left-cont,
.startup-innovation-left-cont.image-reveal-wrap {
    margin-top: 0 !important;
    padding-top: 0 !important;
    top: 0 !important;
    transform: none !important;
    align-self: flex-start !important;
}

/* Ensure SVG + image do not introduce spacing */
.startup-innovation-left-cont svg {
    display: block !important;
    margin: 0 !important;
}

.startup-innovation-left-cont img {
    display: block !important;
    margin-top: 0 !important;
}

/* Kill any top margin or transform on heading */
.startup-innovation-right-cont h3,
.startup-innovation-right-cont .js-title-reveal {
    margin-top: 0 !important;
    padding-top: 0 !important;
    transform: none !important;
}

/* Ensure right column itself does not shift */
.startup-innovation-right-cont {
    margin-top: 0 !important;
    padding-top: 0 !important;
    align-self: flex-start !important;
}

.startup-innovation-section .startup-innovation--wrapper {
    padding-top: 70px !important;
}

@media (max-width: 768px) {

    /* Stack */
    .startup-innovation--wrapper {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 18px !important;
    }

    /* Ensure the left wrapper participates in layout and reserves space */
    .startup-innovation-left-cont.image-reveal-wrap,
    .startup-innovation-left-cont {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        /* important: contain the image */
        height: auto !important;
        min-height: 240px !important;
        /* ensures space exists even if something is absolute */
        transform: none !important;
    }

    /* Kill any absolute positioning that your reveal JS/CSS may apply */
    .startup-innovation-left-cont * {
        position: static !important;
    }

    /* Put the mask back to normal and remove it */
    .startup-innovation-left-cont .image-mask {
        display: none !important;
    }

    /* Force IMG to be the element that defines height */
    .startup-innovation-left-cont img.image-modal,
    .startup-innovation-left-cont img.js-image-reveal {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        height: 350px !important;
        /* fixed image area so text never overlaps */
        max-height: none !important;
        object-fit: cover !important;
        margin: 0 !important;
        border-radius: 12px !important;
        transform: none !important;
        opacity: 1 !important;
    }

    /* Ensure right content always starts AFTER the image */
    .startup-innovation-right-cont {
        position: relative !important;
        z-index: 2 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
        transform: none !important;
    }

    .startup-innovation-right-cont h3 {
        margin-top: 0 !important;
    }
}

/* Center wrapper */
.banner-image-center {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}

/* Image behavior */
.banner-title-image {
max-width: 45%;
height: auto;
display: block;
}

/* Ensure container has height */
.banner-left-wrapper {
min-height: 400px; /* adjust based on your design */
}

/* Optional: constrain width for better visual */
.banner-left-cont {
width: 100%;
max-width: 800px;
margin: 0 auto;
}

@media (max-width: 768px) {
.banner-left-wrapper {
    min-height: 280px;
}

.banner-title-image {
    max-width: 95%;
}
}


.banner-slider-wrapper,
.banner-slider-wrapper .swiper,
.banner-slider-wrapper .swiper-wrapper,
.banner-slider-wrapper .swiper-slide {
overflow: visible !important;
}
.leadership-image{box-shadow: none !important;}

.coming-soon-desc {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 0.5px;
}

.countdown {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;   /* horizontal center */
  align-items: center;       /* vertical alignment */
  text-align: center;
}

.cd-tile {
  background: #154677;
  border-radius: 10px;
  padding: 12px 16px;
  min-width: 70px;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

.cd-value {
  display: block;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  color: #e5c687;
}

.cd-label {
  display: block;
  font-size: 12px;
  opacity: 0.7;
  margin-top: 4px;
  color: #e5c687;
}

.gown-section {
  position: relative;
  overflow: hidden;
  color: #fff;
}

.gown-bg-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: none;
}

/* Container */
.gown-container {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 50px;
  align-items: center;
  width: 100vw;
  max-width: 100vw;
  padding-left: 100px;
  padding-right: 100px;
}

/* LEFT */
.gown-title {
  font-size: 42px;
  margin-bottom: 20px;
  font-weight: 400;
  color: #e5c687;
}

.gown-left{
    background: #1546775e;
    padding: 40px;
}

.gown-text {
  font-size: 20px;
  line-height: 1.5;
  opacity: 0.9;
  font-style: italic;
  font-weight: 200;
}

.gown-text p {
  margin-bottom: 16px;
}

/* Highlight */
.gown-text .highlight {
  background: #e5c687;
  color: #000;
  padding: 2px 6px;
  border-radius: 4px;
}

/* RIGHT */
.gown-video-wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 */
  border-radius: 6px;
  overflow: hidden;
}

.gown-video-wrapper iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

/* RESPONSIVE */
@media (max-width: 1024px) {
  .gown-container {
    gap: 40px;
  }

  .gown-title {
    font-size: 34px;
  }
}

@media (max-width: 768px) {
  .gown-container {
    grid-template-columns: 1fr;
    padding-bottom: 30px;
  }

  .gown-title {
    font-size: 28px;
    text-align: center;
  }

  .gown-text {
    text-align: center;
  }

  .gown-right {
    margin-top: 20px;
  }

  .gown-section{margin-bottom: 40px;}
}
.mw-150{max-width: 150px !important;}

.speaker-para{color:#e5c687; font-size: 18px; font-weight: 300;}

.tl-desc::before{display: none !important;}

.tl-desc{padding-left: 0px !important;}

.tl-label strong{font-size: 14px !important;}

.tl-steps {
  display: flex;
  justify-content: center; /* centers items */
  align-items: flex-start;
  gap: 15px;
  position: relative;
  z-index: 1;
  padding: 0 24px;
  width: 100%;          /* take full container width */
  min-width: unset;     /* REMOVE max-content */
  flex-wrap: nowrap;    /* keep in one line */
}

@media (max-width: 768px) {

  /* Track container */
  .tl-track {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
  }

  /* Steps wrapper */
  .tl-steps {
    display: flex;
    justify-content: flex-start; /* CRITICAL: not center */
    align-items: flex-start;
    gap: 12px;
    padding: 0 16px;
    width: max-content; /* allows natural width */
  }

  /* Each step */
  .tl-step {
    flex: 0 0 auto;
    min-width: 120px;
  }

  /* Button inside */
  .tl-dotbtn {
    width: 100%;
  }

  /* Optional: nicer spacing */
  .tl-label strong {
    font-size: 14px;
  }

}

@media (max-width: 768px) {

  .tl-track {
    scroll-snap-type: x mandatory;
  }

  .tl-step {
    scroll-snap-align: center;
  }

}

/* =========================
   WRAPPER
========================= */
.people-slider {
  position: relative;
  width: 100%;
  padding: 80px 0;
}

.people-slider__inner {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* =========================
   VIEWPORT + TRACK
========================= */
.ps-viewport {
  overflow: hidden;
}

.ps-track {
  display: flex;
  transition: transform 0.4s ease;
}

/* =========================
   DESKTOP GRID (8 per slide)
========================= */
.ps-slide {
  min-width: 100%;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px 24px;
}

.ps-card {
  text-align: center;
}

/* =========================
   IMAGE STYLE
========================= */
.ps-image-wrap {
  position: relative;
}

.ps-image-wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #0f3c6e;
  transform: translate(8px, 8px);
  z-index: 0;
}

.ps-image-wrap img {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1.1;
  object-fit: cover;
  z-index: 1;
}

/* =========================
   NAME
========================= */
.ps-name {
  margin-top: 8px;
  font-size: 18px;
  font-weight: 500;
  padding-top: 15px;
  color: #154677;
}

/* =========================
   ARROWS
========================= */
.ps-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: #0f3c6e;
  color: #fff;
  border: none;
  width: 44px;
  height: 44px;
  z-index: 20;
  cursor: pointer;
}

.ps-arrow--left { left: -60px; }
.ps-arrow--right { right: -60px; }

/* =========================
   TABLET (2 COL)
========================= */
@media (max-width: 1024px) {
  .ps-slide {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
  }

  .ps-arrow--left { left: -30px; }
  .ps-arrow--right { right: -30px; }
}

/* =========================
   MOBILE (KEY CHANGE)
========================= */
@media (max-width: 600px) {

  .people-slider {
    padding: 40px 0;
  }

  /* CRITICAL: horizontal scrolling slides */
  .ps-slide {
    display: flex;
    gap: 12px;
  }

  /* 3 items visible */
  .ps-card {
    flex: 0 0 calc(33.333% - 8px);
  }

  .ps-image-wrap::before {
    transform: translate(6px, 6px);
  }

  /* arrows inside */
  .ps-arrow {
    width: 34px;
    height: 34px;
    font-size: 16px;
  }

  .ps-arrow--left { left: 8px; }
  .ps-arrow--right { right: 8px; }
}

.alumni-section{background: #154877 !important;}

.startup-innovation-section .startup-innovation--wrapper .startup-innovation-left-cont img{height: 460px !important;}

.commencement-archive {
  background: #f9f1e1;
  padding: 40px 20px;
  font-family: inherit;
}

.commencement-archive .ca-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}

/* TITLE */
.commencement-archive .ca-title {
  font-size: 42px;
  font-weight: 400;
  color: #154687;
  margin: 0;
}

/* SLIDER WRAP */
.commencement-archive .ca-slider {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* NAV */
.commencement-archive .ca-nav {
  display: flex;
}

.commencement-archive .ca-btn {
  width: 60px;
  height: 60px;
  border: none;
  cursor: pointer;
  font-size: 22px;
  color: #fff;
}

.commencement-archive .ca-prev {
  background: #c5d1dd;
}

.commencement-archive .ca-next {
  background: #8aa2bb;
}

/* TRACK */
.commencement-archive .ca-track {
  position: relative;
  width: 360px;
  height: 60px;
  overflow: hidden;
}

/* SLIDE */
.commencement-archive .ca-slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px;
  background: #e5c687;
  color: #fff;
  text-decoration: none;
  opacity: 0;
  transform: translateX(100%);
  transition: all 0.4s ease;
  pointer-events: none;
}

/* ACTIVE */
.commencement-archive .ca-slide.active {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}

/* EXIT LEFT */
.commencement-archive .ca-slide.exit-left {
  transform: translateX(-100%);
  opacity: 0;
}

/* TEXT */
.commencement-archive .ca-slide span {
  font-size: 14px;
  letter-spacing: 1px;
  color: #154687;
}

/* ARROW */
.commencement-archive .ca-arrow {
  font-size: 18px;
}

/* MOBILE */
@media (max-width: 768px) {
  .commencement-archive .ca-container {
    flex-direction: column;
    align-items: flex-start;
  }

  .commencement-archive .ca-track {
    width: 100%;
  }

  .commencement-archive .ca-title {
    font-size: 30px;
  }
}

/* =========================
   MOBILE FIX (CRITICAL)
   ========================= */
@media (max-width: 768px) {

  .commencement-archive .ca-container {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
  }

  /* Title full width */
  .commencement-archive .ca-title {
    font-size: 28px;
    line-height: 1.2;
  }

  /* Stack slider properly */
  .commencement-archive .ca-slider {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  /* NAV centered and full width */
  .commencement-archive .ca-nav {
    width: 100%;
    display: flex;
  }

  .commencement-archive .ca-btn {
    flex: 1;
    height: 50px;
  }

  /* TRACK full width */
  .commencement-archive .ca-track {
    width: 100%;
    height: 56px;
  }

  /* SLIDE ensure visibility */
  .commencement-archive .ca-slide {
    font-size: 13px;
    padding: 0 14px;
  }

  .commencement-archive .ca-slide span {
    font-size: 12px;
  }

  /* Prevent overflow issues */
  .commencement-archive {
    overflow: hidden;
  }

  .mobile-pt-30{padding-top: 30px;}
  .graundbreak-work-section #inlineYoutubeWrapper .coming-soon-pill{font-size: 16px;}
  .cd-value{font-size: 15px;}
  .cd-label{font-size: 10px;}
  .graundbreak-work-section #inlineYoutubeWrapper .coming-soon-card{padding: clamp(12px, 1vw, 25px);}
  .graundbreak-work-section #inlineYoutubeWrapper .coming-soon-overlay{padding: clamp(9px, 0vw, 25px);}
  .info-cont{padding-top: 0px !important;}
  .mobile-pt-80{padding-top: 80px !important;}
}

/* ===== Desktop (keep ratio) ===== */
.cm-video {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.cm-video__inner {
  position: relative;
  width: 100%;
  aspect-ratio: 1200 / 650;
  background: #000;
  overflow: hidden;
  border-radius: 20px;
}

/* Desktop iframe fill */
.cm-video__inner iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

/* ===== MOBILE FIX (REAL FIX) ===== */
@media (max-width: 768px) {

  .cm-video__inner {
    aspect-ratio: auto;        /* remove forced ratio */
    height: auto;
    padding-bottom: 56.25%;    /* 16:9 */
  }

  .cm-video__inner iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .graundbreak-work-section .graundbreak-work-innovation-videos{height: 300px;}
}

.banner-section .banner-wrapper .banner-right-cont .banner-right-slide-area p{color: #154677 !important;}

.banner-section .banner-wrapper .banner-right-cont .banner-right-slide-area h2{color: #0C2945 !important;}



.banner-left-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* VIDEO */
.banner-bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

/* IMAGE FALLBACK */
.banner-bg-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    z-index: 1;
}

/* CONTENT ABOVE */
.banner-left-cont {
    position: relative;
    z-index: 2;
}

/* TITLE FADE-IN (5s delay) */
.banner-title-image {
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInTitle 1.2s ease forwards;
    animation-delay: 5s;
}

/* KEYFRAME */
@keyframes fadeInTitle {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* MOBILE OPTIMIZATION */
@media (max-width: 768px) {
    .banner-bg-video {
        object-fit: cover;
    }

    .banner-title-image {
        animation-delay: 3s; /* shorter for mobile attention span */
        max-width: 52%;
    }
}

/* END COMMENCEMENT LANDING CSS */

/* BEGIN COMMENCEMENT INFO CSS */

/* Contact section: img-bg-content-wrapper (same style as study page) */
#contact-information-sessions.img-bg-content-wrapper .content--area p + p {
  margin-top: 12px;
}
#contact-information-sessions.img-bg-content-wrapper .content--area .cta--btn {
  width: auto;
  max-width: fit-content;
}
/* Contact + CTA: no extra margin between sections (padding comes from shared section rules) */
.commencement-2026-info-page #contact-information-sessions.img-bg-content-wrapper {
  margin-bottom: 0;
}
.commencement-2026-info-page .cta-section {
  margin-top: 0;
}

/* Banner: keep title and button above the gradient overlay */
.banner-section .banner-left-wrapper .banner-left-cont {
  position: relative;
  z-index: 2;
}

.section-chip-nav {
  position: sticky;
  top: 0;
  z-index: 100;
  background-color: #0C2945 !important;
  padding-top: 20px;
  padding-bottom: 20px;
  margin-top: 0;
  margin-bottom: 0;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.section-chip-nav .cont-box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
}

.section-chip-nav .cont-box a,
#commencement-sub-nav .section-chip-nav__link {
  background-color: transparent;
  border: 1px solid #fff;
  border-radius: 35px;
  padding: 12px 24px;
  height: 45px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: "AktivGrotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 132%;
  letter-spacing: -3%;
  color: #fff;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.2s ease, box-shadow 0.2s ease, border-color 0.3s ease;
  white-space: nowrap;
}

.section-chip-nav .cont-box a:hover {
  background-color: rgba(255, 255, 255, 0.1);
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.section-chip-nav .cont-box a.active,
.section-chip-nav .cont-box a.is-active,
.section-chip-nav .cont-box a:target {
  background-color: #fff;
  color: #154677;
  border-color: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* Win over #commencement-sub-nav .section-chip-nav__link (scroll-spy sets .is-active via main.js) */
#commencement-sub-nav.section-chip-nav .section-chip-nav__link.is-active,
#commencement-sub-nav.section-chip-nav .section-chip-nav__link.active {
  background-color: #fff;
  color: #154677;
  border-color: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

#commencement-sub-nav.section-chip-nav .section-chip-nav__link.is-active:hover {
  background-color: #fff;
  color: #154677;
  border-color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.commencement-info-overview-section {
  padding-top: 61px;
  padding-bottom: 39px;
}

@media (min-width: 992px) {
  .commencement-info-overview-section {
    padding-top: 132px;
    padding-bottom: 110px;
  }
}

.commencement-programs-details-lists {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}

@media (min-width: 992px) {
  .commencement-programs-details-lists {
    gap: 22px;
    align-items: center;
    flex-direction: row;
  }
}

.commencement-programs-details-lists li {
  padding: 20px;
  background: #E5C687;
  color: #154677;
  font-family: "AktivGrotesk", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 132%;
  letter-spacing: -3%;
  margin-top: 0;
  height: 67px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media (min-width: 992px) {
  .commencement-programs-details-lists li {
    width: 33.3333333333%;
  }
}

/* List bullets: content sections on this page */
.commencement-2026-info-page .list-items-box .lists-items {
  display: flex;
  flex-direction: column;
  gap: 0;
  list-style: none;
  padding: 0;
  margin: 0;
}

.commencement-2026-info-page .list-items-box .lists-items li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-family: "AktivGrotesk", sans-serif;
  font-size: 16px;
  letter-spacing: 0%;
  padding-bottom: 8px;
}

.commencement-2026-info-page .list-items-box .lists-items li .check-mark-icon {
  min-width: 18px;
  max-width: 18px;
  width: 18px;
  height: 18px;
  border-radius: 50px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Protocol briefing: subheading icons (same assets as commencement-2025-info) */
.commencement-2026-info-page #protocol-briefing .protocol-subheading {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.commencement-2026-info-page #protocol-briefing .protocol-subheading__icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.commencement-2026-info-page #protocol-briefing .protocol-subheading__icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.commencement-resources-download-list {
  display: flex;
  flex-direction: column;
  gap: 30px;
  margin-top: 30px;
  list-style: none;
  padding: 0;
  margin-left: 0;
}

.commencement-resources-download-list li {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  gap: 15px;
  position: relative;
}

.commencement-resources-download-list li::before {
  content: "";
  position: absolute;
  width: 11px;
  height: 11px;
  border-radius: 100px;
  background: #1A8039;
  left: 0;
  top: 11px;
}

.info-about-vice-president {
  background: #154677;
  padding-top: 60px;
  padding-bottom: 60px;
}
@media (min-width: 992px) {
  .info-about-vice-president {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
.info-about-vice-president .info-about-vice-president--wrapper {
  padding-bottom: 30px;
}
@media (min-width: 992px) {
  .info-about-vice-president .info-about-vice-president--wrapper {
    padding-bottom: 50px;
  }
}
.info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont {
  display: flex;
  align-items: flex-end;
  gap: 92px;
  flex-direction: column;
}
@media (min-width: 992px) {
  .info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont {
    gap: 71px;
    flex-direction: row;
  }
}
.info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .left-cont .img-cont-box {
  position: relative;
  max-width: 328px;
  width: 50%;
  height: auto;
}
.info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .left-cont .img-cont-box img {
  width: 100%;
  height: auto;
  max-width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  display: block;
  object-fit: contain;
  object-position: top center;
  vertical-align: middle;
}
.info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .left-cont .about-preesident {
  margin-top: 17px;
}
.info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .left-cont .about-preesident .name {
  font-family: "AktivGrotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 132%;
  letter-spacing: -3%;
  color: #E5C687;
}
@media (min-width: 992px) {
  .info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .left-cont .about-preesident .name {
    font-size: 20px;
  }
}
.info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .left-cont .about-preesident .desc {
  font-family: "AktivGrotesk", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 155%;
  letter-spacing: 0;
  color: #fff;
}
.info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .right-cont {
  max-width: 560px;
}
@media (min-width: 992px) {
  .info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .right-cont {
    padding-bottom: 56px;
  }
}
.info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .right-cont h2 {
  font-family: "AktivGrotesk", sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 120%;
  letter-spacing: -3%;
  color: #E5C687;
}
@media (min-width: 992px) {
  .info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .right-cont h2 {
    font-size: 44px;
  }
}
.info-about-vice-president .info-about-vice-president--wrapper .info-about-vice-president--top-cont .right-cont p {
  font-family: "AktivGrotesk", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 155%;
  letter-spacing: 0%;
  color: #fff;
  margin-top: 18px;
}

/* Consistent vertical section padding (Commencement 2026 Info): equal top + bottom; utilities like no-pt removed from markup */
.commencement-2026-info-page .commencement-info-overview-section,
.commencement-2026-info-page .commencement-expect-day-section,
.commencement-2026-info-page .img-bg-content-wrapper,
.commencement-2026-info-page .why-chose-us-section,
.commencement-2026-info-page .faq-section {
  padding-top: 60px !important;
  padding-bottom: 60px !important;
}
@media (min-width: 992px) {
  .commencement-2026-info-page .commencement-info-overview-section,
  .commencement-2026-info-page .commencement-expect-day-section,
  .commencement-2026-info-page .img-bg-content-wrapper,
  .commencement-2026-info-page .why-chose-us-section,
  .commencement-2026-info-page .faq-section {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
}
/* Contact uses .img-bg-content-wrapper but sits directly above the global green CTA: drop bottom padding so there is no white gap */
.commencement-2026-info-page #contact-information-sessions.img-bg-content-wrapper {
  padding-bottom: 0 !important;
}
/* Commencement timings & parking (from commencement-2025-info) — card layout */
.commencement-2026-info-page .commencement-day-schedule-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  align-items: stretch;
}
@media (min-width: 992px) {
  .commencement-2026-info-page .commencement-day-schedule-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
  }
}
.commencement-2026-info-page .commencement-day-schedule-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  height: 100%;
  margin: 0;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid rgba(21, 70, 119, 0.14);
  border-radius: 12px;
  padding: 22px 20px;
  box-shadow: 0 4px 24px rgba(21, 70, 119, 0.07);
}
@media (min-width: 992px) {
  .commencement-2026-info-page .commencement-day-schedule-item {
    padding: 26px 24px;
  }
}
.commencement-2026-info-page .commencement-day-schedule-item > img {
  width: 50px;
  height: auto;
  display: block;
}
.commencement-2026-info-page .commencement-day-schedule-item .schedule-time {
  color: #154677;
  font-size: 18px;
  font-weight: 400;
  font-family: "AktivGrotesk", sans-serif;
  line-height: 1.35;
}
.commencement-2026-info-page .commencement-day-schedule-item .schedule-time-note {
  display: block;
  font-size: 16px;
  margin-top: 4px;
  color: #1b1810;
  font-weight: 400;
}
.commencement-2026-info-page .commencement-day-schedule-item .schedule-label {
  color: #1b1810;
  font-weight: 400;
  font-family: "AktivGrotesk", sans-serif;
  line-height: 1.55;
  font-size: 16px;
  letter-spacing: 0;
}
.commencement-2026-info-page .commencement-parking-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  align-items: stretch;
}
@media (min-width: 992px) {
  .commencement-2026-info-page .commencement-parking-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}
.commencement-2026-info-page .commencement-parking-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  height: 100%;
  margin: 0;
  box-sizing: border-box;
  background: #fff;
  border: 1px solid rgba(21, 70, 119, 0.14);
  border-radius: 12px;
  padding: 22px 20px;
  box-shadow: 0 4px 24px rgba(21, 70, 119, 0.07);
}
@media (min-width: 992px) {
  .commencement-2026-info-page .commencement-parking-item {
    padding: 26px 24px;
  }
}
.commencement-2026-info-page .commencement-parking-item > img {
  width: 50px;
  height: auto;
  display: block;
}
.commencement-2026-info-page .commencement-parking-item .parking-kicker {
  color: #154677;
  font-size: 18px;
  font-weight: 400;
  font-family: "AktivGrotesk", sans-serif;
}
.commencement-2026-info-page .commencement-parking-item .parking-detail {
  color: #1b1810;
  font-weight: 400;
  font-family: "AktivGrotesk", sans-serif;
  font-size: 16px;
  line-height: 1.55;
}
.commencement-2026-info-page .commencement-parking-item .parking-directions-link {
  margin-top: auto;
  padding-top: 8px;
  font-family: "AktivGrotesk", sans-serif;
  font-weight: 500;
  font-size: 16px;
  color: #154677;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.commencement-2026-info-page .commencement-parking-item .parking-directions-link:hover {
  color: #1a8039;
}
.banner-section .banner-wrapper .banner-right-cont .banner-right-slide-area h2{font-size: 28px;}
.img-bg-content-wrapper .img-bg-content-wrapper--area{justify-content: center;}
.custom-ul{font-size: 20px;padding-bottom: 10px; color: #154677; padding-left: 14px;}
.header-section .header-main a.cta--btn[href*="ApplicantPortal"]{
  display: none !important;
}

/* Sticky chip nav (#commencement-sub-nav) sits at top:0 when stuck; scrollIntoView
   uses block:start so section tops were hidden under it. Offset anchor targets. */
.commencement-2026-info-page > section[id] {
  scroll-margin-top: 11rem;
  scroll-margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .commencement-2026-info-page > section[id] {
    scroll-margin-top: 7.5rem;
  }
}
@media (min-width: 992px) {
  .commencement-2026-info-page > section[id] {
    scroll-margin-top: 6.5rem;
  }
}

.commencement-2026-info-page #important-info,
.commencement-2026-info-page #gown-booking,
.commencement-2026-info-page #dress-code {
  background: #f9f1e1;
}
/* Dark blue CTA: fit label + arrow; white circle behind arrow (override btn--send-custom navy circle) */
.commencement-2026-info-page #important-info .commencement-info-hub-cta.btn {
  width: fit-content !important;
  max-width: none !important;
}
.commencement-2026-info-page #important-info .commencement-info-hub-cta .btn--arrow {
  background-color: #fff !important;
}

/* Gown booking: costs table (from commencement-2025-info) */
.commencement-2026-info-page #gown-booking .commencement-gown-costs-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 16px;
  margin-bottom: 8px;
  font-size: 16px;
}
.commencement-2026-info-page #gown-booking .commencement-gown-costs-table th,
.commencement-2026-info-page #gown-booking .commencement-gown-costs-table td {
  border: 1px solid rgba(21, 70, 119, 0.25);
  padding: 12px 14px;
  text-align: left;
  vertical-align: top;
}
.commencement-2026-info-page #gown-booking .commencement-gown-costs-table thead th {
  background: #154677;
  color: #fff;
  font-weight: 600;
}
.commencement-2026-info-page #gown-booking .commencement-gown-guide-list {
  list-style: disc;
  /* padding-left: 1.25rem; */
  margin: 12px 0 0;
}
.commencement-2026-info-page #gown-booking .commencement-gown-guide-list li {
  margin-top: 8px;
}

/* Section labels: not interactive (no magnetic hover — js-magnetic-btn removed from markup) */
.commencement-2026-info-page .section-title-box .pin-btn {
  cursor: default;
}

.commencement-2026-info-page .commencement-expect-day-section .commencement-expect-video-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  overflow: hidden;
  background: #0c2945;
}
.commencement-2026-info-page .commencement-expect-day-section .commencement-expect-video-wrap iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.section-title-box .section-title-right-cont p {
    margin-top: 10px !important; 
}

.protocol-subheading__text{font-size: 18px;}

.check-mark-icon{padding-top: 6px;}

#parking-transport{padding-top: 0px !important;}

.no-pb{padding-bottom: 0px !important;}

.img-bg-content-wrapper .img-bg-content-wrapper--area .content--area p{max-width: unset !important;}

/* END COMMENCEMENT INFO CSS */