/*
 Theme Name:   Lokmanya Shikshan Sanstha
 Theme URI:    https://www.itpower.in
 Description:  Custom Astra Child Theme developed for Lokmanya Shikshan Sanstha Powerd by IT Power.
 Author:       IT Power
 Author URI:   https://www.itpower.in
 Template:     astra
 Version:      1.0.0
 Text Domain:  astra-child
*/

/* ------------------------------------------------------------------------- *
 * Custom styles below this line
 * ------------------------------------------------------------------------- */
 
 /* ==========================================================
   PURE STICKY LOGIC ONLY (.lss_sticky_col)
   ========================================================== */

/* 1. Theme-level overflow unblock (keeps sticky alive) */
.ast-container,
#primary,
#main,
.entry-content,
.site-content {
  overflow: visible !important;
}

/* 2. Parent Container Setup */
.lss_sticky_row,
.lss_sticky_row > .e-con-inner {
  display: flex !important;
  align-items: flex-start !important; /* Prevents column from auto-stretching to match text height */
  overflow: visible !important;       /* Prevents overflow traps */
  position: relative !important;
}

/* 3. Pure Sticky Column (No image styling or shadows) */
.lss_sticky_col {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 110px !important;              /* Offset from viewport top while scrolling */
  align-self: flex-start !important; /* Ensures the element maintains independent travel room */
  height: fit-content !important;    /* Collapses container height to its inner content */
  z-index: 10 !important;
}

/* 4. Mobile & Tablet: Reset sticky to normal flow */
@media (max-width: 921px) {
  .lss_sticky_col {
    position: static !important;
    top: auto !important;
  }
}


/* 5. Navy Left-Border Card (.white_box) */
.white_box {
  background: #FFFFFF !important;
  border: 1px solid #EEF2F6 !important;
  border-left: 5px solid #22388A !important;
  border-radius: 0 10px 10px 0 !important;
  padding: 24px 28px !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05) !important;
  box-sizing: border-box !important;
  margin-bottom: 24px !important;
}

/* 6. Cyan Left-Border Card (.blue_box) */
.blue_box {
  background: #FFFFFF !important;
  border: 1px solid #EEF2F6 !important;
  border-left: 5px solid #00ADEF !important;
  border-radius: 0 10px 10px 0 !important;
  padding: 24px 28px !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05) !important;
  box-sizing: border-box !important;
  margin-bottom: 24px !important;
}

/* 7. Typography & Checkmark Lists (.lss_containt) */
.lss_containt p,
.white_box p,
.blue_box p {
  font-size: 15.5px !important;
  line-height: 1.85 !important;
  color: #333333 !important;
  text-align: justify !important;
  margin: 0 0 10px 0 !important;
}

.lss_containt strong:first-child,
.white_box strong:first-child,
.blue_box strong:first-child {
  font-size: 19px !important;
  color: #22388A !important;
  font-style: italic !important;
  letter-spacing: 0.3px !important;
  display: block !important;
  margin-bottom: 8px !important;
}

.lss_containt ul,
.white_box ul,
.blue_box ul {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 12px 0 0 0 !important;
}

.lss_containt ul li,
.white_box ul li,
.blue_box ul li {
  position: relative !important;
  padding-left: 28px !important;
  margin-bottom: 14px !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #444444 !important;
}

.lss_containt ul li::before,
.white_box ul li::before,
.blue_box ul li::before {
  content: "✔" !important;
  position: absolute !important;
  left: 0 !important;
  top: 1px !important;
  color: #00ADEF !important;
  font-size: 14px !important;
  font-weight: bold !important;
}

/* 8. Mobile & Tablet: Unstick gracefully */
@media (max-width: 921px) {
  .lss_sticky_row,
  .lss_sticky_row > .e-con-inner {
    flex-direction: column !important;
  }
  .lss_sticky_col {
    position: static !important;
    top: auto !important;
    max-width: 100% !important;
    width: 100% !important;
    margin-bottom: 24px !important;
  }
  .lss_sticky_col img {
    max-width: 440px !important;
    margin: 0 auto !important;
  }
}

