/* ==========================================================================
   CCTech Press Release / Newsroom grid — premium editorial redesign
   Scoped ENTIRELY to #eael-post-grid-5194cd6d — the specific Essential
   Addons "Post Grid" widget instance on /media/press-room/ (Elementor
   archive template #4170). This id is unique to that one widget, so
   these rules cannot reach the Blog grid, any other eael-post-grid
   widget elsewhere on the site (Customer Stories / Webinars archives
   use their own widget instances with different ids), or the single
   press-release template. No query/data logic is touched — presentation
   only, layered on top of Essential Addons' own generated CSS via an ID
   selector (which naturally outranks its class-chain rules).
   Brand tokens: navy #00367B (primary here), blue #2185D0, orange
   #E77817 (sparing CTA/hover accent), ink #0A0E27, muted #4C516C.
   ========================================================================== */

#eael-post-grid-5194cd6d .eael-grid-post-holder {
  background: #FFFFFF !important;
  border: 1px solid rgba(0, 54, 123, 0.14) !important;
  border-radius: 8px !important;
  box-shadow: 0 2px 10px rgba(0, 54, 123, 0.08) !important;
  overflow: hidden;
  position: relative;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

/* Hover-revealed orange "flag" — a signature distinct from the Blog
   grid's always-visible top bar. */
#eael-post-grid-5194cd6d .eael-grid-post-holder::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: #E77817;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
  z-index: 2;
}

#eael-post-grid-5194cd6d .eael-grid-post:hover .eael-grid-post-holder {
  transform: translateY(-4px);
  box-shadow: 0 18px 32px -14px rgba(0, 54, 123, 0.28), 0 6px 14px -4px rgba(0, 54, 123, 0.14) !important;
  border-color: rgba(0, 54, 123, 0.32) !important;
}

#eael-post-grid-5194cd6d .eael-grid-post:hover .eael-grid-post-holder::before {
  transform: scaleX(1);
}

/* ---- Media --------------------------------------------------------- */

#eael-post-grid-5194cd6d .eael-entry-media {
  overflow: hidden;
}

#eael-post-grid-5194cd6d .eael-entry-thumbnail,
#eael-post-grid-5194cd6d .eael-entry-thumbnail img,
#eael-post-grid-5194cd6d .eael-entry-overlay {
  border-radius: 0 !important;
}

#eael-post-grid-5194cd6d .eael-entry-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s ease;
}

#eael-post-grid-5194cd6d .eael-grid-post:hover .eael-entry-thumbnail img {
  transform: scale(1.06);
}

/* Retint the built-in hover overlay from generic black to CCTech navy */
#eael-post-grid-5194cd6d .eael-entry-overlay {
  background-color: rgba(0, 54, 123, 0.78) !important;
}

/* ---- Wrapper: reorder so the date leads, title, then excerpt/CTA --- */

#eael-post-grid-5194cd6d .eael-entry-wrapper {
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
  height: 350px !important;
  overflow: hidden;
  padding: 20px 22px !important;
}

#eael-post-grid-5194cd6d .eael-entry-header-after {
  order: -1;
  margin: 0 0 10px 0 !important;
}

#eael-post-grid-5194cd6d .eael-entry-header {
  order: 0;
  margin-bottom: 10px;
}

#eael-post-grid-5194cd6d .eael-entry-content {
  order: 1;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

/* ---- Date badge — strong publication-date hierarchy ----------------- */

#eael-post-grid-5194cd6d .eael-entry-meta {
  display: inline-flex;
}

#eael-post-grid-5194cd6d .eael-posted-on.eael-meta-posted-on {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  background: rgba(0, 54, 123, 0.07);
  color: #00367B !important;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 4px;
  border-left: 2px solid #E77817;
}

#eael-post-grid-5194cd6d .eael-posted-on i {
  color: #E77817;
}

/* ---- Title ------------------------------------------------------------ */

#eael-post-grid-5194cd6d .eael-entry-title,
#eael-post-grid-5194cd6d .eael-entry-title a {
  color: #0A0E27 !important;
  font-size: 19px !important;
  line-height: 1.42 !important;
}

#eael-post-grid-5194cd6d .eael-entry-title {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

#eael-post-grid-5194cd6d .eael-entry-title a:hover {
  color: #2185D0 !important;
}

/* ---- Excerpt ------------------------------------------------------------ */

#eael-post-grid-5194cd6d .eael-grid-post-excerpt {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
}

#eael-post-grid-5194cd6d .eael-grid-post-excerpt p {
  color: #4C516C !important;
  font-size: 14px;
  line-height: 1.65;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 10px;
  flex: 1 1 auto;
}

/* ---- CTA — editorial text link, orange accent (distinct from the
   Blog grid's blue arrow-link CTA) --------------------------------- */

#eael-post-grid-5194cd6d .eael-post-elements-readmore-btn {
  background: transparent !important;
  border: none !important;
  color: #E77817 !important;
  padding: 0 !important;
  margin: auto 0 0 0 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  display: inline-flex;
  align-items: center;
  position: relative;
  width: fit-content;
  transition: color 0.2s ease;
}

#eael-post-grid-5194cd6d .eael-post-elements-readmore-btn::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.25s ease;
}

#eael-post-grid-5194cd6d .eael-post-elements-readmore-btn:hover {
  color: #c9660f !important;
}

#eael-post-grid-5194cd6d .eael-post-elements-readmore-btn:hover::after {
  transform: scaleX(1);
}

/* ==========================================================================
   Responsive refinements — laptop / tablet / 390 / 360 / 320
   ========================================================================== */

@media (max-width: 1024px) {
  #eael-post-grid-5194cd6d .eael-entry-wrapper {
    height: 340px !important;
  }
}

@media (max-width: 767px) {
  #eael-post-grid-5194cd6d .eael-entry-wrapper {
    height: 320px !important;
    padding: 18px !important;
  }
  #eael-post-grid-5194cd6d .eael-entry-title,
  #eael-post-grid-5194cd6d .eael-entry-title a {
    font-size: 18px !important;
  }
}

@media (max-width: 480px) {
  #eael-post-grid-5194cd6d .eael-entry-thumbnail {
    height: 200px !important;
  }
  #eael-post-grid-5194cd6d .eael-entry-wrapper {
    height: auto !important;
    min-height: 300px;
    padding: 16px !important;
  }
  #eael-post-grid-5194cd6d .eael-entry-title,
  #eael-post-grid-5194cd6d .eael-entry-title a {
    font-size: 17px !important;
  }
  #eael-post-grid-5194cd6d .eael-posted-on.eael-meta-posted-on {
    font-size: 11.5px !important;
    padding: 4px 10px;
  }
  #eael-post-grid-5194cd6d .eael-grid-post-excerpt p {
    font-size: 13.5px;
  }
}

@media (max-width: 360px) {
  #eael-post-grid-5194cd6d .eael-entry-wrapper {
    padding: 14px !important;
  }
}

/* ==========================================================================
   Year filter pills (?pr_year=YYYY buttons) — AJAX active state.
   Markup/behaviour lives in cctech-press-release-filter.js; this only
   styles which pill is currently selected, reusing the existing button
   widget's own blue (#2185D0) so the "on" state reads as a filled version
   of the same control instead of a new color.
   ========================================================================== */

[id^="cctech-pr-year-"].cctech-pr-year-active .elementor-button {
  background-color: #2185D0 !important;
  color: #FFFFFF !important;
}

[id^="cctech-pr-year-"] .elementor-button {
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

#eael-post-grid-5194cd6d[aria-busy="true"] {
  opacity: 0.55;
  pointer-events: none;
  transition: opacity 0.15s ease;
}
