.elementor-4473 .elementor-element.elementor-element-64cc1df{--display:flex;}.elementor-4473 .elementor-element.elementor-element-5f2bf8a > .elementor-widget-container{margin:0rem 15rem 0rem 15rem;}.elementor-4473 .elementor-element.elementor-element-e67e9fe{margin:1% 7% calc(var(--kit-widget-spacing, 0px) + 0%) 7%;padding:0px 0px 0px 0px;}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-4473 .elementor-element.elementor-element-42adb01{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-4473 .elementor-element.elementor-element-42adb01 > .elementor-widget-container{margin:0rem 15rem 0rem 15rem;}.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__thumbnail__link{width:100%;}.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__meta-data span + span:before{content:"///";}.elementor-4473 .elementor-element.elementor-element-42adb01.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:20px;}.elementor-4473 .elementor-element.elementor-element-42adb01.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:20px;}.elementor-4473 .elementor-element.elementor-element-42adb01.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px;}@media(max-width:767px){.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__thumbnail__link{width:100%;}}/* Start custom CSS for posts, class: .elementor-element-42adb01 *//* ==========================================================================
   HKU CDS - Admission Event Posts (Elementor Posts widget custom CSS)
   Use Elementor ".elementor-4473 .elementor-element.elementor-element-42adb01" keyword — do NOT prefix with .elementor-4473
   Widget: elementor-element-42adb01 | 3 cols desktop, 2 tablet, 1 mobile
   ========================================================================== */

.elementor-4473 .elementor-element.elementor-element-42adb01 {
  --hku-blue: #002147;
  --hku-gold: #f4a261;
  --hku-orange: #ea580c;
  --muted: #5c6370;
  --line: #dfe5ec;
  --paper: #ffffff;
  --grid-gap: 24px;
  --card-pad: 18px;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 > .elementor-widget-container {
  width: min(calc(90% - 64px), 1760px);
  max-width: 100%;
  margin: 0 auto;
  padding: 12px 0;
  box-sizing: border-box;
}

.elementor-4473 .elementor-element.elementor-element-42adb01,
.elementor-4473 .elementor-element.elementor-element-42adb01 * {
  box-sizing: border-box;
}

/* Kill masonry absolute layout — use CSS grid at all breakpoints */
.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container,
.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-masonry {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--grid-gap) !important;
  align-items: stretch !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-post,
.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-grid-item {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  float: none !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-post {
  background: var(--paper) !important;
  border: 1px solid var(--line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-post:nth-child(3n + 1) {
  border-top: 4px solid var(--hku-blue) !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-post:nth-child(3n + 2) {
  border-top: 4px solid var(--hku-gold) !important;
  background: #fffbf7 !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-post:nth-child(3n) {
  border-top: 4px solid var(--hku-blue) !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__thumbnail__link {
  display: block !important;
  width: 100% !important;
  height: 132px !important;
  overflow: hidden !important;
  margin: 0 !important;
  border-bottom: 1px solid var(--line) !important;
  flex-shrink: 0 !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__thumbnail,
.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__thumbnail img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__text {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 16px var(--card-pad) var(--card-pad) !important;
  margin: 0 !important;
  min-width: 0 !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__meta-data {
  display: block !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.35px !important;
  color: var(--hku-orange) !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__title {
  margin: 0 0 8px 0 !important;
  line-height: 1.3 !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__title a {
  font-size: 0.98rem !important;
  color: var(--hku-blue) !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  word-break: break-word;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__title a:hover {
  color: var(--hku-orange) !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__excerpt {
  font-size: 0.84rem !important;
  color: var(--muted) !important;
  line-height: 1.55 !important;
  text-align: justify !important;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  flex: 1 1 auto !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-width: 0 !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__excerpt p {
  margin: 0 !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__read-more {
  align-self: flex-start !important;
  margin-top: auto !important;
  padding: 0 0 2px 0 !important;
  border: none !important;
  border-bottom: 2px solid var(--hku-gold) !important;
  font-size: 0.76rem !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.35px !important;
  color: var(--hku-orange) !important;
  text-decoration: none !important;
}

.elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__read-more:hover {
  color: var(--hku-blue) !important;
}

/* Tablet: 2 per row */
@media (max-width: 1024px) {
  .elementor-4473 .elementor-element.elementor-element-42adb01 > .elementor-widget-container {
    width: calc(100% - 32px);
    padding-left: 16px;
    padding-right: 16px;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container,
  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-masonry {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__thumbnail__link {
    height: 150px !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__title a {
    font-size: 1.02rem !important;
  }
}

/* Mobile: 1 per row — flex stack is more reliable than grid vs masonry JS */
@media (max-width: 767px) {
  .elementor-4473 .elementor-element.elementor-element-42adb01 > .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 8px 16px 20px !important;
    --card-pad: 16px;
    --grid-gap: 16px;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container,
  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-masonry {
    display: flex !important;
    flex-direction: column !important;
    gap: var(--grid-gap) !important;
    width: 100% !important;
    height: auto !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-post,
  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-grid-item {
    position: static !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
    height: auto !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-post:nth-child(odd) {
    border-top: 4px solid var(--hku-blue) !important;
    background: var(--paper) !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-posts-container .elementor-post:nth-child(even) {
    border-top: 4px solid var(--hku-gold) !important;
    background: #fffbf7 !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__thumbnail__link {
    height: auto !important;
    aspect-ratio: 16 / 9;
    min-height: 0 !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__thumbnail,
  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__thumbnail img {
    height: auto !important;
    aspect-ratio: 16 / 9;
    object-fit: cover !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__title a {
    font-size: 1.05rem !important;
    display: block !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: unset !important;
    overflow: visible !important;
    white-space: normal !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__excerpt {
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
    display: block !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: unset !important;
    overflow: visible !important;
    text-align: left !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__read-more {
    font-size: 0.8rem !important;
    min-height: 44px;
    display: inline-flex !important;
    align-items: center;
    padding: 8px 0 4px !important;
    white-space: normal !important;
  }
}

/* Small phones */
@media (max-width: 480px) {
  .elementor-4473 .elementor-element.elementor-element-42adb01 > .elementor-widget-container {
    padding-left: 12px !important;
    padding-right: 12px !important;
    --card-pad: 14px;
    --grid-gap: 14px;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__title a {
    font-size: 1rem !important;
  }

  .elementor-4473 .elementor-element.elementor-element-42adb01 .elementor-post__excerpt {
    font-size: 0.86rem !important;
  }
}/* End custom CSS */