/**
 * Projects Tabs Block Styles - block.json Implementation
 *
 * NOTE: This file is currently duplicated with resources/styles/blocks/projects-tabs.css
 * Do not delete the older file until the migration is complete.
 *
 * When making changes to styles, update both files to maintain consistency
 * until the migration is fully complete.
 */

/* Projects Tabs Block Styles */

.projects-block {
  @apply w-full overflow-hidden py-12;
}

.projects-block .projects-tabs,
.projects-block .projects-container {
  @apply w-full;
}

/* Filter navigation */
.projects-block .filter-header {
  @apply mb-10;
}

.projects-block .filter-nav {
  @apply flex flex-wrap justify-start gap-4 mb-8;
}

.projects-block .filter-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border: 2px solid var(--wp--preset--color--primary, #0c4a83);
  color: var(--wp--preset--color--primary, #0c4a83);
  text-decoration: none;
  font-weight: 600;
  font-size: 0.9rem;
  text-transform: uppercase;
  transition: all 0.3s ease;
  background-color: transparent;
  border-radius: 0;
  text-align: center;
}

.projects-block .filter-btn.active {
  background-color: var(--wp--preset--color--primary, #0c4a83);
  color: #ffffff;
}

.projects-block .filter-btn:not(.active) {
  background-color: white;
  color: var(--wp--preset--color--primary, #0c4a83);
}

.projects-block .filter-btn:hover:not(.active) {
  background-color: var(--wp--preset--color--primary, #0c4a83);
  color: #ffffff;
  border-color: #ffffff;
}

.projects-block .filter-btn.active:hover {
  background-color: white;
  color: var(--wp--preset--color--primary, #0c4a83);
  border-color: var(--wp--preset--color--primary, #0c4a83);
}

/* Projects content */
.projects-block .projects-content {
  @apply py-6;
  position: relative;
  width: 100%;
  background-color: #fff;
}

.projects-block .projects-pane {
  display: none;
}

.projects-block .projects-pane.active {
  display: block !important;
}

.projects-block .projects-list {
  @apply space-y-16;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

.projects-block .animate-fadeIn {
  animation: fadeIn 0.4s ease-out forwards;
}

/* Project item - using vertical layout */
.projects-block .project-item {
  position: relative;
  width: 100%;
  margin-bottom: 4rem;
  background-color: #f8f9fa;
  border-radius: 0;
  overflow: hidden;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  display: flex;
  flex-direction: column;
  height: 100%;
}

.projects-block .project-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

/* Media container with 16:9 aspect ratio */
.projects-block .project-content-wrapper {
  position: relative !important;
  width: 100% !important;
  padding-top: 56.25% !important; /* 16:9 aspect ratio */
  background-color: #eaeaea;
  overflow: hidden;
}

/* Ensure background slider takes up full space */
.projects-block .project-background-slider {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 1 !important;
  display: block !important;
}

/* Content card styling - blog style underneath image */
.projects-block .project-content-card {
  position: relative;
  width: 100%;
  background-color: #fff;
  z-index: 2;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: column;
  flex: 1;
}

.projects-block .project-content-card h3 {
  @apply text-lg md:text-xl font-bold mb-0.5;
  color: var(--wp--preset--color--heading, #1a202c);
  line-height: 1.2;
  max-width: 90%;
}

/* Address styling */
.projects-block .project-content-card > p:first-of-type {
  @apply text-sm text-gray-600 mb-1.5;
  line-height: 1.3;
}

/* More compact project details */
.projects-block .project-details {
  @apply grid grid-cols-1 md:grid-cols-2 gap-x-4 gap-y-0.5 mb-1;
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
}

.projects-block .project-item .detail-item {
  @apply mb-0.5;
  display: flex;
  flex-wrap: nowrap;
  align-items: baseline;
}

.projects-block .project-item .detail-item h4 {
  @apply font-medium text-gray-600 text-xs uppercase tracking-wide mr-1;
  width: 35%;
  flex-shrink: 0;
  margin-bottom: 0;
}

.projects-block .project-item .detail-item p {
  @apply text-gray-900 text-sm;
  width: 65%;
  margin: 0;
  line-height: 1.3;
}

/* View gallery button */
.projects-block .view-gallery-btn {
  @apply inline-flex items-center justify-center transition-all duration-200 mt-1;
  color: var(--wp--preset--color--primary, #0c4a83);
  font-weight: 600;
  font-size: 0.85rem;
  text-decoration: none;
  padding: 0;
  background: transparent;
  border: none;
}

.projects-block .view-gallery-btn:hover {
  color: var(--wp--preset--color--primary-dark, #003A75);
  text-decoration: underline;
}

.projects-block .view-gallery-btn svg {
  transition: transform 0.2s ease-in-out;
  width: 1em;
  height: 1em;
  margin-left: 0.25rem;
}

.projects-block .view-gallery-btn:hover svg {
  transform: translateX(3px);
}

/* Grid specific styling for 3-column blog layout */
.projects-block .projects-grid,
.projects-block .projects-list.projects-grid {
  display: grid !important;
  width: 100% !important;
}

.projects-block .grid-cols-3,
.projects-block .projects-list.grid-cols-3 {
  grid-template-columns: repeat(3, 1fr) !important;
}

/* Responsive adjustments */
@media (max-width: 1200px) {
  .projects-block .projects-grid.grid-cols-3,
  .projects-block .projects-grid.grid-cols-4,
  .projects-block .projects-list.grid-cols-3,
  .projects-block .projects-list.grid-cols-4 {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .projects-block .project-item {
    height: auto !important;
  }
}

/* New breakpoint for screens smaller than 727px but larger than mobile */
@media (max-width: 727px) and (min-width: 481px) {
  .projects-block .projects-grid,
  .projects-block .projects-list.projects-grid,
  .projects-block .projects-grid.grid-cols-3,
  .projects-block .projects-list.grid-cols-3,
  .projects-block .projects-content .projects-list {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 768px) {
  .projects-block .project-content-card {
    padding: 0.75rem;
  }

  .projects-block .project-details {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }

  .projects-block .projects-grid,
  .projects-block .projects-list.projects-grid,
  .projects-block .projects-grid.grid-cols-3,
  .projects-block .projects-list.grid-cols-3 {
    grid-template-columns: repeat(1, 1fr) !important;
  }

  .projects-block .project-item[data-style="list"],
  .projects-block .project-item {
    padding: 0 !important;
  }

  .projects-block .project-item .project-content-card {
    padding: 1rem;
  }

  .projects-block .project-item .detail-item {
    @apply mb-0.5;
    display: flex;
  }

  .projects-block .project-details,
  .projects-block .project-item .project-details {
    @apply grid-cols-1 gap-y-0.5;
  }

  .projects-block .project-background-slider {
    padding-top: 75%; /* 4:3 aspect ratio on mobile */
  }

  .projects-block .filter-nav {
    @apply flex-wrap;
  }

  .projects-block .filter-btn {
    @apply flex-grow text-center;
  }

  .projects-block .project-item .detail-item {
    @apply mb-0.5;
    display: flex;
  }

  .projects-block .project-item .detail-item h4 {
    @apply mb-0;
    width: 40%;
  }

  .projects-block .project-item .detail-item p {
    width: 60%;
  }

  .projects-block .project-nav {
    top: 16px;
    right: 16px;
    gap: 8px;
  }

  .projects-block .project-item {
    height: auto !important;
    min-height: auto !important;
  }

  .projects-block .project-content-wrapper {
    height: 100%;
  }

  .projects-block .project-content {
    max-height: 400px;
  }

  .projects-block .content-slider-nav {
    top: 16px;
    right: 16px;
  }

  .projects-block .project-item[data-style="list"],
  .projects-block .project-item {
    padding: 15px;
  }

  .projects-block .project-details {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 480px) {
  .projects-block .projects-grid,
  .projects-block .projects-list.projects-grid,
  .projects-block .projects-grid.grid-cols-2,
  .projects-block .projects-grid.grid-cols-3,
  .projects-block .projects-grid.grid-cols-4,
  .projects-block .projects-list.grid-cols-2,
  .projects-block .projects-list.grid-cols-3,
  .projects-block .projects-list.grid-cols-4,
  .projects-block .projects-content .projects-list {
    grid-template-columns: repeat(1, 1fr) !important;
  }

}

/* Project item - full width slider */
.projects-block .project-item {
  position: relative;
  display: flex !important;
  flex-direction: column !important;
  width: 100%;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  overflow: hidden;
  margin-bottom: 2rem;
  background-color: #f8f9fa;
  border-radius: 0;
}

/* Navigation arrows and buttons */
.projects-block .project-nav {
  position: absolute;
  top: 20px;
  right: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
  z-index: 3;
}

.projects-block .project-nav-button {
  width: 40px !important;
  height: 40px !important;
  background-color: rgba(0, 0, 0, 0.5) !important;
  color: white !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  border: none !important;
  border-radius: 0 !important;
  transition: background-color 0.2s ease;
}

.projects-block .project-nav-button:hover {
  background-color: rgba(0, 0, 0, 0.7);
}

.projects-block .project-nav-button svg {
  width: 20px !important;
  height: 20px !important;
  color: white !important;
  stroke: white !important;
  fill: none !important;
  stroke-width: 2 !important;
}

/* Slide counter */
.projects-block .slide-counter {
  font-size: 14px;
  font-weight: 500;
  color: white;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 4px 15px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Ensure slides take up full space */
.projects-block .bg-slide {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  opacity: 0;
  transition: opacity 0.8s ease;
  display: block !important;
}

.projects-block .bg-slide.active {
  opacity: 1;
  z-index: 1;
}

.projects-block .bg-image {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: block !important;
}

/* Video element styling for better playback */
.projects-block .bg-slide video,
.projects-block .bg-video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  display: block !important;
}

/* Slider navigation arrows - more prominent */
.projects-block .content-slider-nav {
  @apply absolute top-8 right-8 flex items-center gap-3 z-30;
}

.projects-block .content-slider-btn {
  @apply flex items-center justify-center bg-gray-100 hover:bg-gray-200 rounded transition-all duration-200;
  color: var(--wp--preset--color--primary, #0c4a83);
  width: 36px;
  height: 36px;
}

.projects-block .content-slider-btn svg {
  width: 20px;
  height: 20px;
}

.projects-block .content-slider-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

/* Make headings larger and bolder to match reference */
.projects-block .project-content h3 {
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  margin-bottom: 0.5rem !important;
  color: #000 !important;
  line-height: 1.2 !important;
}

.projects-block .completion-badge {
  @apply px-2 py-0.5 text-xs font-medium rounded-none inline-block;
  background-color: var(--wp--preset--color--primary, #0c4a83);
  color: white;
  margin-top: 0.25rem;
}

/* Dots navigation for project slider */
.projects-block .dots-nav {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  z-index: 10;
}

.projects-block .dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.5);
  cursor: pointer;
  transition: all 0.3s ease;
}

.projects-block .dot.active {
  background-color: white;
  transform: scale(1.2);
}

/* Lightbox styles - Increased Specificity */
#project-lightbox .lightbox {
  @apply fixed top-0 left-0 w-full h-full z-50 hidden;
}

#project-lightbox.active {
  @apply flex;
}

#project-lightbox .lightbox-overlay {
  @apply absolute top-0 left-0 w-full h-full bg-black bg-opacity-90;
}

#project-lightbox .lightbox-container {
  @apply absolute top-0 left-0 w-full h-full flex justify-center items-center;
}

#project-lightbox .lightbox-content {
  @apply relative max-w-[90%] max-h-[80vh] mx-auto;
}

#project-lightbox .lightbox-image,
#project-lightbox .lightbox-video {
  @apply max-w-full max-h-[80vh] object-contain hidden;
}

#project-lightbox .lightbox-image.active,
#project-lightbox .lightbox-video.active {
  @apply block;
}

/* Improved close button */
#project-lightbox .lightbox-close {
  @apply fixed top-6 right-6 w-14 h-14 bg-black bg-opacity-80 hover:bg-opacity-100 flex items-center justify-center cursor-pointer z-50 transition-colors duration-200 rounded-none;
  border: 2px solid rgba(255, 255, 255, 0.25);
}

#project-lightbox .lightbox-close:hover {
  @apply bg-opacity-100;
  transform: scale(1.05);
  border-color: rgba(255, 255, 255, 0.5);
}

#project-lightbox .lightbox-close svg {
  @apply w-7 h-7 text-white;
  stroke-width: 2.5px;
}

/* Improved navigation */
#project-lightbox .lightbox-nav {
  @apply fixed bottom-6 left-0 w-full flex justify-center items-center gap-5 z-50;
}

#project-lightbox .lightbox-prev,
#project-lightbox .lightbox-next {
  @apply w-14 h-14 bg-black bg-opacity-80 hover:bg-opacity-100 flex items-center justify-center cursor-pointer transition-all duration-200 rounded-none;
  border: 2px solid rgba(255, 255, 255, 0.25);
}

#project-lightbox .lightbox-prev:hover,
#project-lightbox .lightbox-next:hover {
  @apply bg-opacity-100;
  transform: scale(1.05);
  border-color: rgba(255, 255, 255, 0.5);
}

#project-lightbox .lightbox-prev svg,
#project-lightbox .lightbox-next svg {
  @apply w-7 h-7 text-white;
  stroke-width: 2.5px;
}

#project-lightbox .lightbox-counter {
  @apply text-white text-base bg-black bg-opacity-80 py-2 px-6 font-medium;
  border: 2px solid rgba(255, 255, 255, 0.25);
}

/* Traditional projects list style - for the image layout */
.projects-block .project-item[data-style="list"],
.projects-block .project-item {
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
  margin-bottom: 2rem !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
  background-color: white !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}

.projects-block .project-item[data-style="list"] h3,
.projects-block .project-item h3 {
  font-size: 1.5rem !important;
  font-weight: 700 !important;
  margin-bottom: 1rem !important;
  color: #000 !important;
  display: block !important;
}

.projects-block .project-item[data-style="list"] > p,
.projects-block .project-item > p {
  margin-bottom: 1rem !important;
  color: #333 !important;
}

.projects-block .project-item[data-style="list"] .detail-item,
.projects-block .project-item .detail-item {
  display: block !important;
}

.projects-block .project-item[data-style="list"] .detail-item h4,
.projects-block .project-item .detail-item h4 {
  font-weight: 600 !important;
  display: inline !important;
  margin-right: 0.5rem !important;
  color: #333 !important;
  text-transform: none !important;
  font-size: 1rem !important;
  letter-spacing: normal !important;
}

.projects-block .project-item[data-style="list"] .detail-item p,
.projects-block .project-item .detail-item p {
  display: inline !important;
  margin: 0 !important;
  color: #333 !important;
}

.projects-block .project-item[data-style="list"] a.view-gallery-btn,
.projects-block .project-item a.view-gallery-btn {
  align-self: flex-start !important;
  margin-top: 1rem !important;
  color: var(--wp--preset--color--primary, #0c4a83) !important;
  text-decoration: none !important;
  display: inline-flex !important;
  background-color: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  font-weight: 600 !important;
}

.projects-block .project-item[data-style="list"] a.view-gallery-btn:hover,
.projects-block .project-item a.view-gallery-btn:hover {
  background-color: transparent !important;
  text-decoration: underline !important;
}

/* Project list specific styles with stronger specificity */
.projects-block .projects-list .project-item {
  border-bottom: 1px solid #eaeaea !important;
}

.projects-block .projects-list .project-item:last-child {
  border-bottom: none !important;
}

.projects-block .projects-pane .projects-list {
  display: block !important;
}

.projects-block .project-details {
  display: block !important;
}

/* Grid specific styles - MORE IMPORTANT */
.projects-block .projects-grid,
.projects-block .projects-list.projects-grid {
  display: grid !important;
  gap: 2rem !important;
  width: 100% !important;
}

.projects-block .grid-cols-1,
.projects-block .projects-list.grid-cols-1 {
  grid-template-columns: repeat(1, 1fr) !important;
}

.projects-block .grid-cols-2,
.projects-block .projects-list.grid-cols-2 {
  grid-template-columns: repeat(2, 1fr) !important;
}

.projects-block .grid-cols-4,
.projects-block .projects-list.grid-cols-4 {
  grid-template-columns: repeat(4, 1fr) !important;
}

/* Make sure grid items are uniform */
.projects-block .projects-grid > .project-item,
.projects-block .projects-list.projects-grid > .project-item {
  width: 100% !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  margin-bottom: 0 !important;
  float: none !important;
  display: block !important;
}

/* Explicitly override any conflicting styles */
.projects-block .projects-pane .projects-list {
  display: grid !important;
}

/* Responsive adjustments - MORE SPECIFIC */
@media (max-width: 1200px) {
  .projects-block .projects-grid.grid-cols-3,
  .projects-block .projects-grid.grid-cols-4,
  .projects-block .projects-list.grid-cols-3,
  .projects-block .projects-list.grid-cols-4 {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .projects-block .project-item {
    height: auto !important;
  }
}

@media (max-width: 991px) {
  .projects-block .project-content-card {
    width: 100%;
    padding: 1rem;
  }
}

@media (max-width: 768px) {
  .projects-block .project-background-slider {
    padding-top: 75%; /* 4:3 aspect ratio on mobile */
  }

  .projects-block .filter-nav {
    @apply flex-wrap;
  }

  .projects-block .filter-btn {
    @apply flex-grow text-center;
  }

  .projects-block .project-item .detail-item {
    @apply mb-0.5;
    display: flex;
  }

  .projects-block .project-item .detail-item h4 {
    @apply mb-0;
    width: 40%;
  }

  .projects-block .project-item .detail-item p {
    width: 60%;
  }

  .projects-block .project-nav {
    top: 16px;
    right: 16px;
    gap: 8px;
  }

  .projects-block .project-details,
  .projects-block .project-item .project-details {
    @apply grid-cols-1 gap-y-0.5;
  }

  .projects-block .project-item[data-style="list"] {
    padding: 1.25rem !important;
  }

  .projects-block .projects-grid,
  .projects-block .projects-list.projects-grid,
  .projects-block .projects-grid.grid-cols-2,
  .projects-block .projects-grid.grid-cols-3,
  .projects-block .projects-grid.grid-cols-4,
  .projects-block .projects-list.grid-cols-2,
  .projects-block .projects-list.grid-cols-3,
  .projects-block .projects-list.grid-cols-4 {
    grid-template-columns: repeat(1, 1fr) !important;
  }

  .projects-block .project-item {
    height: auto !important;
    min-height: auto !important;
  }

  .projects-block .project-content-wrapper {
    height: 100%;
  }

  .projects-block .project-content {
    max-height: 400px;
  }

  .projects-block .content-slider-nav {
    top: 16px;
    right: 16px;
  }

  .projects-block .project-item[data-style="list"],
  .projects-block .project-item {
    padding: 15px;
  }

  .projects-block .project-details {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
}

/* Space between projects */
.projects-block .space-y-16 > * + * {
  margin-top: 4rem;
}

/* Restore two columns for larger screens */
@media (min-width: 1200px) {
  .projects-block .project-details {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .projects-block .project-content h3 {
    font-size: 1.5rem !important;
  }

  .projects-block .project-content > p:first-of-type {
    font-size: 0.875rem !important;
  }

  .projects-block .view-gallery-btn {
    font-size: 1rem !important;
  }

  /* Restore gap for desktop - adding back the spacing between grid items */
  .projects-block .projects-grid,
  .projects-block .projects-list.projects-grid,
  .projects-block .projects-content .projects-list {
    gap: 2.5rem !important;
  }
}

/* Desktop and tablet gap control */
@media (min-width: 728px) {
  .projects-block .projects-grid,
  .projects-block .projects-list.projects-grid,
  .projects-block .projects-content .projects-list {
    gap: 2rem !important;
  }
}

/* Responsive grid layout */
.projects-block .projects-grid-responsive {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

@media (max-width: 1200px) {
  .projects-block .projects-grid-responsive {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .projects-block .projects-grid-responsive {
    grid-template-columns: repeat(1, 1fr);
  }
}

/* Critical fixes for grid layout */
.projects-block .projects-content .projects-list {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  width: 100% !important;
  margin-top: 0 !important;
  float: none !important;
}

/* Override any single column display */
.projects-block .projects-content .projects-list.grid-cols-1 {
  grid-template-columns: repeat(1, 1fr) !important;
}

.projects-block .projects-content .projects-list.grid-cols-2 {
  grid-template-columns: repeat(2, 1fr) !important;
}

.projects-block .projects-content .projects-list.grid-cols-3 {
  grid-template-columns: repeat(3, 1fr) !important;
}

.projects-block .projects-content .projects-list.grid-cols-4 {
  grid-template-columns: repeat(4, 1fr) !important;
}

/* Critical responsive overrides */
@media (max-width: 1200px) {
  .projects-block .projects-content .projects-list.grid-cols-3,
  .projects-block .projects-content .projects-list.grid-cols-4 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 768px) {
  .projects-block .projects-content .projects-list {
    grid-template-columns: repeat(1, 1fr) !important;
  }
}

/* Handle details hidden state */
.projects-block .project-content-card.details-hidden {
  display: none;
}

/* Ensure media container works with flex layout */
.projects-block .project-media {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 aspect ratio */
  background-color: #eaeaea;
  overflow: hidden;
}

.projects-block .project-slider {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Update to match offer block button styling */
.projects-block .filter-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border: 2px solid var(--wp--preset--color--primary, #0c4a83);
  color: var(--wp--preset--color--primary, #0c4a83);
  text-decoration: none;
  font-weight: 600;
  font-size: 0.9rem;
  text-transform: uppercase;
  transition: all 0.3s ease;
  background-color: transparent;
  border-radius: 0;
  text-align: center;
}

.projects-block .filter-btn:hover:not(.active) {
  background-color: var(--wp--preset--color--primary, #0c4a83);
  color: #ffffff;
  border-color: var(--wp--preset--color--primary, #0c4a83);
}

.projects-block .filter-btn.active {
  background-color: var(--wp--preset--color--primary, #0c4a83);
  color: #ffffff;
  border-color: var(--wp--preset--color--primary, #0c4a83);
}

.projects-block .filter-btn.active:hover {
  background-color: transparent;
  color: var(--wp--preset--color--primary, #0c4a83);
}

/* Add these CSS rules at the top of the file */
.projects-block .project-item.hidden {
  display: none !important;
}

.projects-block .project-item[style*="display: none"] {
  display: none !important;
}

.projects-block .projects-pane:not(.active) {
  display: none !important;
}

/* Important rules to ensure specificity */
.projects-block .filter-btn.active {
  background-color: #0c4a83 !important;
  color: #ffffff !important;
  border-color: #0c4a83 !important;
}
