/* Blog listing grid/list toggle */
.blog-view-toggle {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin-bottom: 24px;
  font-family: Inter, sans-serif;
}

.blog-view-toggle button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 14px;
  border: 1px solid #75458B;
  background: #ffffff;
  color: #75458B;
  border-radius: 6px;
  cursor: pointer;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 14px;
  font-weight: 600;
  transition: all 0.2s ease;
}

.blog-view-toggle button:hover,
.blog-view-toggle button.active {
  background: #75458B;
  color: #ffffff;
}

.blog-view-toggle button svg {
  width: 16px;
  height: 16px;
}

/* Grid view: enforce 3 posts per row */
.post-items {
  display: flex !important;
  flex-wrap: wrap !important;
}

.post-items > .col-lg-4,
.post-items > .col-md-6,
.post-items > [class*="col-"] {
  width: 33.3333% !important;
  max-width: 33.3333% !important;
  flex: 0 0 33.3333% !important;
  box-sizing: border-box;
  padding: 0 12px 24px 12px;
}

/* Smaller title size and spacing between cards */
.elementskit-post-image-card {
  margin-bottom: 0 !important;
}

.post-items .entry-title,
.post-items .entry-title a,
.post-items .elementskit-post-body .entry-title a,
.elementor-widget-container .entry-title a {
  font-size: 18px !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
}

/* Padding inside the grid cards */
.post-items:not(.list-view) .elementskit-post-body {
  padding: 20px 24px 24px 24px !important;
}

/* Enforce equal-height tiles & borders in Grid View */
.post-items:not(.list-view) > [class*="col-"] {
  display: flex !important;
}

.post-items:not(.list-view) .elementskit-post-image-card {
  background: #ffffff !important;
  border: 1px solid #e4dce7 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 12px rgba(108, 84, 130, 0.05) !important;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

/* Hover lift effect for tiles */
.post-items:not(.list-view) .elementskit-post-image-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 12px 24px rgba(108, 84, 130, 0.12) !important;
  border-color: #75458B !important;
}

.post-items:not(.list-view) .elementskit-entry-header img {
  border-top-left-radius: 12px !important;
  border-top-right-radius: 12px !important;
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
}

@media (max-width: 767px) {
  .post-items > .col-lg-4,
  .post-items > .col-md-6,
  .post-items > [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* List view overrides */
.post-items.list-view {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap !important;
}

.post-items.list-view > .col-lg-4,
.post-items.list-view > .col-md-6,
.post-items.list-view > [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding: 0 0 24px 0;
}

.post-items.list-view .elementskit-post-image-card {
  display: flex !important;
  flex-direction: row !important;
  gap: 24px !important;
  align-items: center !important;
  text-align: left !important;
  background: #ffffff !important;
  border: 1px solid #e4dce7 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 12px rgba(108, 84, 130, 0.05) !important;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
  width: 100% !important;
}

/* Hover lift effect for list view tiles */
.post-items.list-view .elementskit-post-image-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 24px rgba(108, 84, 130, 0.12) !important;
  border-color: #75458B !important;
}

.post-items.list-view .elementskit-entry-header {
  width: 240px;
  flex-shrink: 0;
  margin-bottom: 0;
}

.post-items.list-view .elementskit-entry-header img {
  width: 100%;
  height: 180px !important;
  object-fit: cover;
  border-radius: 12px 0 0 12px !important;
}

.post-items.list-view .elementskit-post-body {
  flex: 1;
  padding: 20px 24px 20px 0 !important;
}

.post-items.list-view .elementskit-post-body p {
  font-size: 15px;
  line-height: 1.6;
}

@media (max-width: 767px) {
  .post-items.list-view .elementskit-post-image-card {
    flex-direction: column;
    gap: 16px;
  }

  .post-items.list-view .elementskit-entry-header {
    width: 100%;
  }

  .post-items.list-view .elementskit-entry-header img {
    height: auto;
  }
}
