/* Hide any default widget headings */
.custom__blogs h3.title { display:none; }

/* Center and style the main blog title */
.custom__blogs .custom__blogs_title {
  text-align: center;
  padding: 30px 0 20px;
}
.custom__blogs .custom__blogs_title h1 {
  font-size: 3.6rem;
  font-weight: 1000;
  margin-bottom: 16px;
  font-family: serif;
}
.custom__blogs .custom__blogs_title h1 strong {
  font-weight: 400;
}
.custom__blogs .custom__blogs_title .text-primary {
  color: #224DD0;
  font-weight: 500;
}
.custom__blogs .custom__blogs_title p {
  font-size: 1.1rem;
  color: #666;
  max-width: 600px;
  margin: 0 auto;
  line-height: 1.6;
}

/* Hide the right image in title section */
.custom__blogs .custom__blogs_title .blog-img {
  display: none;
}

/* Search bar styling */
.custom__blogs .blog-search {
  max-width: 500px;
  margin: 0 auto 40px;
  position: relative;
}
.custom__blogs .blog-search input {
  width: 100%;
  padding: 12px 20px;
  border: 1px solid #e0e0e0;
  border-radius: 25px;
  font-size: 16px;
  outline: none;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  height: inherit;
}
.custom__blogs .blog-search button {
  position: absolute;
  right: 8px;
  top: 67%;
  transform: translateY(-50%);
  background: #224DD0;
  color: white;
  border: none;
  padding: 8px 16px;
  border-radius: 20px;
  cursor: pointer;
  font-weight: 500;
}

/* Magefan blog search widget styling */
.custom__blogs .widget.block.blog-search {
  display: block !important;
  max-width: 500px;
  margin: 0 auto 40px;
}
.custom__blogs .widget.block.blog-search .block-content {
  position: relative;
}
.custom__blogs .widget.block.blog-search .field.search {
  position: relative;
}
.custom__blogs .widget.block.blog-search .control {
  position: relative;
}
.custom__blogs .widget.block.blog-search input#blog_search {
  width: 100%;
  padding: 12px 50px 12px 20px;
  border: 1px solid #e0e0e0;
  border-radius: 25px;
  font-size: 16px;
  outline: none;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
.custom__blogs .widget.block.blog-search .action.search {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  background: #224DD0;
  color: white;
  border: none;
  padding: 8px 16px;
  border-radius: 20px;
  cursor: pointer;
  font-weight: 500;
  width: auto;
  height: auto;
}
.custom__blogs .widget.block.blog-search .action.search:before {
  display: none;
}
.custom__blogs .widget.block.blog-search .action.search span {
  position: static;
  width: auto;
  height: auto;
  clip: auto;
  margin: 0;
  padding: 0;
  overflow: visible;
}

/* Tabs styling */
.custom__blogs .custom_blog .tabs-nav {
  margin: 0 auto 30px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 600px;
}
.custom__blogs .custom_blog .tabs-nav li {
  float: none;
  width: auto;
}
.custom__blogs .custom_blog a {
  background: #f8f9fa;
  border: 1px solid #e9ecef;
  color: #495057;
  padding: 10px 20px;
  border-radius: 25px;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.3s ease;
}
.custom__blogs .custom_blog a:hover {
  background: #e9ecef;
  color: #224DD0;
  text-decoration: none;
}
.custom__blogs .custom_blog .tab-active a {
  background: #224DD0;
  color: #fff;
  border-color: #224DD0;
}
.custom__blogs .custom_blog .tabs-stage {
  border: 0;
  padding: 0;
  top: 0;
}

/* Grid layout - 3 column design for regular posts */
.custom__blogs ul.post-list.clearfix {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  max-width: 1200px;
  margin: 0 auto;
}
.custom__blogs .post-list-wrapper.blog-widget-recent:not(.blog-widget-recent-masonry) .post-holder:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

/* Remove hero styling from first post - make all posts equal */

/* Regular post cards - vertical layout */
.custom__blogs .post-ftimg-hld img {
  border-radius: 12px;
  height: 200px !important;
  object-fit: cover;
  width: 100%;
}
.custom__blogs .post-ftimg-hld:after {
  display: none;
}

/* Regular post cards - vertical layout */
.custom__blogs .post-list-wrapper.blog-widget-recent:not(.blog-widget-recent-masonry) .post-holder {
  background: #fff;
  border-radius: 16px;
  padding: 20px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Post content area */
.custom__blogs .post-list-wrapper.blog-widget-recent:not(.blog-widget-recent-masonry) .post-content {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-start;
  gap: 12px;
}

/* Category styling - blue pill design */
.custom__blogs .post-category {
  margin-bottom: 0;
}
.custom__blogs .post-category a {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 999px;
  background: #224DD0;
  color: #fff;
  font-weight: 600;
  text-decoration: none;
  font-size: 12px;
  text-transform: none;
  letter-spacing: 0;
}

/* Author and date styling - matching featured design */
.custom__blogs .post-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 0;
  color: #6B7280;
  font-size: 14px;
}

/* Author profile picture */
.custom__blogs .post-author {
  display: flex;
  align-items: center;
  gap: 8px;
}
.custom__blogs .post-author img {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
}
.custom__blogs .author-avatar-placeholder {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #E8EEFF;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #224DD0;
  font-weight: 600;
  font-size: 14px;
}

/* Author name styling */
.custom__blogs .post-author .author-name {
  color: #1a1a1a;
  font-weight: 600;
  font-size: 14px;
}

/* Date and read time with dots separator */
.custom__blogs .post-date,
.custom__blogs .post-readtime {
  color: #6B7280;
  font-size: 14px;
  position: relative;
}
.custom__blogs .post-readtime::before {
  content: '•';
  margin-right: 8px;
  color: #6B7280;
}

/* Post titles and content - matching featured design */
.custom__blogs .post-list .post-header .post-title,
.custom__blogs .post-list .post-header h2.post-title {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin: 8px 0 12px 0 !important;
  font-size: 1.4rem !important;
  line-height: 1.3 !important;
}
.custom__blogs .post-list .post-header .post-title a,
.custom__blogs .post-list .post-header h2.post-title a {
  font-weight: 800;
  color: #1a1a1a;
  text-decoration: none;
  font-size: 1.4rem;
  line-height: 1.3;
  margin: 8px 0 12px 0;
  display: block;
  visibility: visible;
  opacity: 1;
}
.custom__blogs .post-list .post-header .post-title a:hover,
.custom__blogs .post-list .post-header h2.post-title a:hover {
  color: #224DD0;
  text-decoration: none;
}

/* Ensure post title is always visible */
.custom__blogs .post-title-holder {
  display: block !important;
  visibility: visible !important;
  position: relative !important;
  z-index: 10 !important;
}
.custom__blogs .post-title {
  display: block !important;
  visibility: visible !important;
  position: relative !important;
  z-index: 10 !important;
}
.custom__blogs .post-item-link {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  z-index: 10 !important;
  text-decoration: none !important;
}

/* Additional post title visibility rules */
.custom__blogs .post-list .post-holder .post-title-holder {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.custom__blogs .post-list .post-holder .post-title,
.custom__blogs .post-list .post-holder h2.post-title {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.custom__blogs .post-list .post-holder .post-item-link {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #1a1a1a !important;
  font-weight: 800 !important;
  font-size: 1.4rem !important;
  line-height: 1.3 !important;
  margin: 8px 0 12px 0 !important;
  text-decoration: none !important;
}
.custom__blogs .blog-widget-recent .post-description .post-text-hld {
  color: #666;
  line-height: 1.6;
  font-size: 15px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 16px;
  max-height: 4.5em; /* Ensure exactly 3 lines */
}

/* Read more button */
.custom__blogs a.post-read-more {
  border: 2px solid #224DD0 !important;
  background-color: #224DD0 !important;
  color: white !important;
  width: 100%;
  margin-top: 15px;
  padding: 10px 20px;
  border-radius: 25px;
  text-decoration: none;
  font-weight: 500;
  text-align: center;
  display: block;
  transition: all 0.3s ease;
}
.custom__blogs a.post-read-more:hover {
  color: #fff !important;
  background-color: #1a3bb8 !important;
  border-color: #1a3bb8 !important;
  text-decoration: none;
}

/* Load more button - hidden */
.custom__blogs #blog-load-more {
  display: none !important;
  margin: 40px auto 0;
  background: #224DD0;
  color: white;
  border: none;
  padding: 12px 30px;
  border-radius: 25px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
}
.custom__blogs #blog-load-more:hover {
  background: #1a3bb8;
  transform: translateY(-2px);
}

/* Mobile responsive */
@media (max-width: 991px) {
  .custom__blogs .custom__blogs_title h1 {
    font-size: 2rem;
  }
}

@media (max-width: 768px) {
  .custom__blogs ul.post-list.clearfix {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .custom__blogs .custom_blog .tabs-nav {
    flex-direction: column;
    align-items: center;
  }
  .custom__blogs .custom_blog .tabs-nav li {
    width: 100%;
    max-width: 200px;
  }
}

@media (max-width: 600px) {
  .custom__blogs ul.post-list.clearfix {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .custom__blogs .post-ftimg-hld img {
    height: 180px !important;
  }
  .custom__blogs .custom__blogs_title {
    padding: 20px 0;
  }
  .custom__blogs .custom__blogs_title h1 {
    font-size: 1.8rem;
  }
}

/* No Posts Message */
.no-posts {
  text-align: center;
  padding: 40px 20px;
  color: #6B7280;
  font-style: italic;
}

.no-posts p {
  margin: 0;
  font-size: 16px;
}

/* Hide any default widget headings */
.custom__blogs h3.title { display:none; }

/* Spacing */
.custom__blogs .tabs-nav { margin: 16px 0 12px 0; }

/* 3-column grid layout for post cards */
.custom__blogs ul.post-list.clearfix { 
  display: grid; 
  grid-template-columns: repeat(3, 1fr);
  gap: 24px; 
  max-width: 1200px; 
  margin: 0 auto; 
}

/* All posts now have equal styling - no special hero treatment */

/* Card media + meta pills */
.custom__blogs .post-ftimg-hld img { border-radius: 16px; height: 200px !important; }
.custom__blogs .post-ftimg-hld:after { display: none; }
.custom__blogs .post-meta { display:flex; align-items:center; gap:12px; margin-top:10px; color:#5b6574; font-size:14px; }
.custom__blogs .post-category a { display:inline-block; padding:4px 10px; border-radius:999px; background:#eef3ff; color:#224DD0; font-weight:600; text-decoration:none; }
.custom__blogs .post-meta > * + * { position:relative; }
.custom__blogs .post-meta > * + *::before { content:''; width:4px; height:4px; border-radius:50%; background:#c8d1e1; display:inline-block; margin:0 4px; }

/* Title and excerpt */
.custom__blogs .post-list .post-header .post-title a,
.custom__blogs .post-list .post-header h2.post-title a { 
  font-weight:800; 
  color:#0e1a2b; 
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  text-decoration: none !important;
}
.custom__blogs .post-list .post-header .post-title,
.custom__blogs .post-list .post-header h2.post-title {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.custom__blogs .blog-widget-recent .post-description .post-text-hld { color:#5b6574; }

/* Pills-like tabs */
.custom__blogs .custom_blog .tabs-nav { display:flex; gap:10px; flex-wrap:wrap; }
.custom__blogs .custom_blog .tabs-nav li { float:none; width:auto; }
.custom__blogs .custom_blog a { background:#f2f5f9; border:1px solid transparent; color:#384d6c; padding:8px 14px; border-radius:999px; }
.custom__blogs .custom_blog .tab-active a { background:#224DD0; color:#fff; border-color:#224DD0; }
.custom__blogs .custom_blog .tabs-stage { border:0; padding:0; top:0; }

/* Load more button styling - hidden */
#blog-load-more {
  display: none !important;
  margin: 24px auto;
  padding: 12px 24px;
  background: #224DD0;
  color: white;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  transition: background-color 0.3s ease;
}

#blog-load-more:hover {
  background: #1D4ED8;
}

/* Mobile */
@media (max-width: 600px) {
  .custom__blogs ul.post-list.clearfix {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .custom__blogs .post-ftimg-hld img { height: 180px !important; }
}

/* Featured blog hero - exact design from shared image */
.wfi-blog-hero {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  gap: 24px;
  align-items: center;
  padding: 24px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  margin: 0px 0 30px 0;
}
.wfi-blog-hero__media { 
  overflow: hidden; 
  border-radius: 12px; 
}
.wfi-blog-hero__img { 
  width: 100%; 
  height: 240px; 
  display: block; 
  object-fit: cover; 
  border-radius: 12px;
}
.wfi-blog-hero__content { 
  padding: 8px 0; 
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between;
}
.wfi-blog-hero__category {
  display: inline-block; 
  margin-bottom: 12px; 
  padding: 6px 12px;
  border-radius: 999px; 
  background: #224DD0; 
  color: #fff; 
  font-weight: 600; 
  font-size: 12px;
  text-transform: uppercase;
}
.wfi-blog-hero__title {
  display: block; 
  color: #1a1a1a; 
  font-weight: 800; 
  font-size: 1.4rem;
  line-height: 1.3; 
  margin: 8px 0 12px 0; 
  text-decoration: none;
}
.wfi-blog-hero__title:hover { 
  color: #224DD0; 
}
.wfi-blog-hero__excerpt { 
  color: #666; 
  line-height: 1.6;
  font-size: 15px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 16px;
  max-height: 6.5em;
}
.wfi-blog-hero__meta { 
  display: flex; 
  align-items: center; 
  gap: 12px; 
  color: #6B7280; 
  font-size: 14px; 
}
.wfi-blog-hero__author {
  display: flex;
  align-items: center;
  gap: 8px;
}
.wfi-blog-hero__author img {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
}
.wfi-blog-hero__author-placeholder {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #E8EEFF;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #224DD0;
  font-weight: 600;
  font-size: 14px;
  text-align: center;
  line-height: 1;
  flex-shrink: 0;
}
.wfi-blog-hero__author-name {
  color: #1a1a1a;
  font-weight: 600;
  font-size: 14px;
}
.wfi-blog-hero__date::after {
  content: '•';
  margin: 0 8px;
  color: #6B7280;
}
.wfi-blog-hero__readtime::before {
  content: '•';
  margin-right: 8px;
  color: #6B7280;
}
body.blog-category-view section.hero_banner.hero_banner-bootcamp {
  display: none;
}
body.blog-category-view .blog-page-list .post-holder {
  max-width: 100%;
}
body.blog-category-view .custom__blogs .post-holder {
  max-width: 100%;}
body.blog-search-index li.post-holder {max-width: 100%;}
.custom__blogs .post-ftimg-hld a {padding: 0;}
.blog-post-view .block.related ol.block-content {
  display: flex;
  flex-direction: row;
  gap: 2rem;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
}
@media (max-width: 992px) { 
  .wfi-blog-hero { 
    grid-template-columns: 1fr; 
  } 
  .wfi-blog-hero__title { 
    font-size: 1.2rem; 
  } 
}
.blog-search-index section.hero_banner.hero_banner-bootcamp {
  display: none;
}
.blog-search-index h1.page-title span.base {
  display: none;
}
.blog-search-index .blog-page-list .post-holder {
  max-width: 30%;
}

/* CRITICAL: Force post titles to be visible - override any conflicting styles */
.custom__blogs .post-holder h2.post-title,
.custom__blogs .post-list .post-holder h2.post-title,
.custom__blogs .post-list .post-header h2.post-title,
.blog-widget-recent .post-holder h2.post-title {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  width: auto !important;
  overflow: visible !important;
  clip: auto !important;
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 1.4rem !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
}

.custom__blogs .post-holder h2.post-title a,
.custom__blogs .post-list .post-holder h2.post-title a,
.custom__blogs .post-list .post-header h2.post-title a,
.blog-widget-recent .post-holder h2.post-title a {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  width: auto !important;
  overflow: visible !important;
  clip: auto !important;
  position: static !important;
  color: #1a1a1a !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  line-height: 1.3 !important;
  text-decoration: none !important;
  background: transparent !important;
  border: none !important;
  padding: 0;
}

.custom__blogs .post-holder h2.post-title a:hover,
.custom__blogs .post-list .post-holder h2.post-title a:hover,
.custom__blogs .post-list .post-header h2.post-title a:hover,
.blog-widget-recent .post-holder h2.post-title a:hover {
  color: #224DD0 !important;
  text-decoration: none !important;
}

/* Additional styling for recent widget post titles */
.blog-widget-recent .post-title-holder {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.blog-author-view ul.post-list li.post-holder {
  max-width: 100%;
}
.blog-author-view .page-title-wrapper, .blog-author-view .block-description {max-width: 85%;display: block;margin: 0 auto;}
.blog-author-view ul.items.pages-items {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: center;
  justify-content: space-around;
}