.elementor-kit-18{--e-global-color-primary:#0A9B1B;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#0A9B1B99;--e-global-typography-primary-font-family:"Rufina";--e-global-typography-primary-font-size:44px;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Carme";--e-global-typography-secondary-font-size:26px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-font-style:oblique;--e-global-typography-text-font-family:"Carme";--e-global-typography-text-font-size:15px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:#000000;}.elementor-kit-18 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.project-tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; 
  margin-right: -12px;
  margin-top: 12px;
  align-items: center;
}

.tag-with-label {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 12px;
  margin-bottom: 12px;
}

.tag-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  cursor: help;
  transition: transform 0.2s ease;
  position: relative;
}

.tag-dot:hover {
  transform: scale(1.3);
}

/* Hide label on desktop by default */
.tag-label {
  font-size: 12px;
  margin-top: 4px;
  display: none;
}

/* Tooltip (desktop only) */
.tag-dot.tooltip::after {
  content: attr(data-title);
  position: absolute;
  bottom: 150%;
  left: 50%;
  transform: translateX(-50%);
  background: #333;
  color: white;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 10;
}

.tag-dot.tooltip:hover::after {
  opacity: 1;
}

/* Mobile: show label, disable tooltip */
@media (max-width: 767px) {
  .tag-label {
    display: block;
  }

  .tag-dot.tooltip::after {
    content: none;
  }
}/* End custom CSS */