/*
 Theme Name: Divi Child EPG
 Theme URI: https://www.elegantthemes.com/gallery/divi/
 Description: Divi Child Theme
 Author: Eagle Prime Group
 Author URI: https://www.eagleprimegroup.com
 Template: Divi
 Version: 1.0.0
*/

/* =Theme customization starts here
------------------------------------------------------- */

/* =========================
   Lane Selector: equal height columns (frontend + builder)
   Purpose: keeps lane columns the same height so buttons align
   Note: No card styling or hover behavior here (Divi handles visuals)
   ========================= */

/* A) If "lane-row" is on the ROW itself */
.et_pb_row.lane-row {
  display: flex !important;
  align-items: stretch !important;
}

/* B) If "lane-row" is on the SECTION instead */
.lane-row .et_pb_row {
  display: flex !important;
  align-items: stretch !important;
}

/* Make each column stretch */
.et_pb_row.lane-row > .et_pb_column,
.lane-row .et_pb_row > .et_pb_column {
  display: flex !important;
  align-items: stretch !important;
}

/* Turn the lane column into a flex stack so content flows top->bottom */
.et_pb_row.lane-row > .et_pb_column.lane-card,
.lane-row .et_pb_row > .et_pb_column.lane-card {
  display: flex !important;
  flex-direction: column !important;
}

/* Allow modules to size normally */
.lane-card .et_pb_module {
  width: 100%;
}

/* Push the button module to the bottom of the column */
.lane-card .et_pb_button_module_wrapper {
  margin-top: auto !important;
}

/* =========================
   Lane Selector: mobile stacking fix
   Purpose: ensure lane columns stack cleanly on mobile
   ========================= */

@media (max-width: 980px) {

  /* Allow wrapping on smaller screens */
  .et_pb_row.lane-row,
  .lane-row .et_pb_row {
    flex-wrap: wrap !important;
  }

  /* Force each lane column full width and stacked */
  .et_pb_row.lane-row > .et_pb_column.lane-card,
  .lane-row .et_pb_row > .et_pb_column.lane-card {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* Optional spacing between stacked columns */
  .lane-card {
    margin-bottom: 24px !important;
  }
}

/* =========================
   Sticky Header Logo
   ========================= */

.epg-header-logo {
  display: flex;
  align-items: center;
}

.epg-header-logo img {
  width: auto !important;
  height: auto !important;
  max-height: 54px;
  transition: max-height 240ms ease;
}

.et_pb_sticky .epg-header-logo img {
  max-height: 40px;
}

/* =========================
   Scroll Cue Animation (Divi Safe)
   ========================= */

.epg-scroll-cue {
  animation: epgFloat 2.2s ease-in-out infinite;
  opacity: 0.9;
}

/* Use translateY but avoid creating layout issues */
@keyframes epgFloat {
  0%   { transform: translate3d(0, 0, 0); opacity: 0.7; }
  50%  { transform: translate3d(0, 6px, 0); opacity: 1; }
  100% { transform: translate3d(0, 0, 0); opacity: 0.7; }
}

/* =========================
   EPG Home Hero Background Layer (failsafe)
   ========================= */
#epg-home-hero {
  position: relative;
  overflow: hidden;
}
#epg-home-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: -1;
}

/* =========================
   Lane Cards - Bottom-align buttons (no hover movement)
   Works for Divi columns with class: lane-card
   ========================= */

/* Ensure the row stretches columns to equal height */
.et_pb_row.lane-row,
.lane-row .et_pb_row {
  display: flex !important;
  align-items: stretch !important;
}

/* Make each column stretch */
.et_pb_row.lane-row > .et_pb_column,
.lane-row .et_pb_row > .et_pb_column {
  display: flex !important;
  align-items: stretch !important;
}

/* The REAL key: make the column AND its inner wrapper a flex column */
.et_pb_column.lane-card,
.et_pb_column.lane-card .et_pb_column_inner {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* Let modules span full width inside the flex column */
.et_pb_column.lane-card .et_pb_module {
  width: 100% !important;
}

/* Push Divi Button module wrapper to the bottom */
.et_pb_column.lane-card .et_pb_button_module_wrapper {
  margin-top: auto !important;
}

/* If you used a Button inside another module, this catches common wrappers */
.et_pb_column.lane-card .et_pb_button_wrapper {
  margin-top: auto !important;
}

/* Mobile: stack cards*
 * 
 * /* Force lane columns to be equal height inside the lane-row */
.et_pb_row.lane-row,
.lane-row .et_pb_row {
  display: flex !important;
  align-items: stretch !important;
}

.et_pb_row.lane-row > .et_pb_column.lane-card,
.lane-row .et_pb_row > .et_pb_column.lane-card {
  height: auto !important;
  min-height: 100% !important;
}

/* Make sure inner wrapper fills the column so the button can anchor */
.et_pb_row.lane-row > .et_pb_column.lane-card .et_pb_column_inner,
.lane-row .et_pb_row > .et_pb_column.lane-card .et_pb_column_inner {
  flex: 1 1 auto !important;
}

blockquote {
    border-left: 4px solid #F76A08 !important;
    padding-left: 20px;
}

blockquote:before {
    display: none !important;
}

/* ===== EPG Clarity Insight Accent Line ===== */

.clarity-insight {
    border-left: 4px solid #fbb040 !important;
}
.clarity-insight::before {
    background-color: #fbb040 !important;
}

/* EPG Elite Insight Card - stable, no jump, no hover movement */
.epg-insight-card {
  position: relative;
  border: 1px solid rgba(0,0,0,0.08);
  border-left: 6px solid #fbb040; /* your exact gold */
  border-radius: 12px;
  background: #f7f8fa; /* calm light gray */
  box-shadow:
    0 10px 22px rgba(0,0,0,0.08),
    0 1px 0 rgba(255,255,255,0.75) inset;
  padding: 28px 28px 26px 34px; /* extra left padding to respect border */
  overflow: hidden;
}

/* subtle top sheen */
.epg-insight-card:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 52%;
  background: linear-gradient(to bottom, rgba(255,255,255,0.65), rgba(255,255,255,0));
  pointer-events: none;
}

/* optional: tighten text spacing inside */
.epg-insight-card p {
  margin-bottom: 0.6em;
}
.epg-insight-card p:last-child {
  margin-bottom: 0;
}

/* remove any inherited blockquote styling if any exists */
.epg-insight-card blockquote {
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* calm hover: no movement, no size change */
.epg-insight-card:hover {
  box-shadow:
    0 14px 28px rgba(0,0,0,0.10),
    0 1px 0 rgba(255,255,255,0.75) inset;
}
