/* Content Buckets styles */
.fcb { position: relative; width: 100%; }
.fcb .fcb-track {
  display: grid;
  grid-template-columns: repeat(var(--fcb-column-count, 3), 1fr);
  gap: var(--fcb-gap, 24px);
  align-items: stretch;
}
.fcb .fcb-bucket{
  background: var(--fcb-bucket-bg, transparent);
  padding: var(--fcb-bucket-pad, 20px 20px 20px 20px);
  border: var(--fcb-border, 0px) solid var(--fcb-border-color, transparent);
  border-radius: var(--fcb-radius, 0px);
  box-sizing: border-box;
}
.fcb .fcb-subtitle{
  display: inline-block;
  background: var(--fcb-sub-bg, transparent);
  color: var(--fcb-subtitle-color, inherit);
  padding: var(--fcb-sub-bg-pad, 0);
  border-radius: var(--fcb-sub-bg-radius, 0px);
  font: normal normal var(--fcb-subtitle-font-variant) var(--fcb-subtitle-font-size, 14px/14px) var(--fcb-subtitle-font-family), sans-serif !important;
  letter-spacing: var(--fcb-subtitle-letter-spacing, normal);
  text-transform: var(--fcb-subtitle-text-transform, none);
}
.fcb .fcb-title{
  color: var(--fcb-title-color, inherit);
  margin-top: var(--fcb-title-margins, 8px);
  margin-bottom: 17px;
  font: normal normal var(--fcb-title-font-variant) var(--fcb-title-font-size, 14px/14px) var(--fcb-title-font-family), sans-serif !important;
  letter-spacing: var(--fcb-title-letter-spacing, normal);
  text-transform: var(--fcb-title-text-transform, none);
}
.fcb .fcb-text{
  color: var(--fcb-text-color, inherit);
  margin-bottom: var(--fcb-text-mb, 12px);
  font: normal normal var(--fcb-text-font-variant) var(--fcb-text-font-size, 14px/14px) var(--fcb-text-font-family), sans-serif !important;
  letter-spacing: var(--fcb-text-letter-spacing, normal);
  text-transform: var(--fcb-text-text-transform, none);
}
.fcb .fcb-text p {
  margin-bottom: 0 !important;
}
.fcb .fcb-sep{
  height: var(--fcb-sep-h, 1px);
  background: var(--fcb-sep-color, #E5E7EB);
  width: 100%;
}
.fcb .fcb-list{ list-style: none; padding: 0; margin: 0; display: flex;flex-direction: column; }
.fcb .fcb-li{ display: flex; align-items: center; gap: var(--fcb-icon-gap, 10px); }
.fcb .fcb-ic{
  display: inline-flex; align-items: center; justify-content: center;
  color: var(--fcb-icon-color, currentColor);
  font-size: var(--fcb-icon-size, 16px);
  line-height: 1;
}
.fcb .fcb-ic-bg{
  border: 2px var(--fcb-icon-bg-color, transparent) solid;
  padding: var(--fcb-icon-pad, 4px 6px 4px 6px);
  border-radius: var(--fcb-icon-radius, 6px);
}
.fcb .fcb-li-text{
  color: var(--fcb-list-color, inherit);
  font: normal normal var(--fcb-list-font-variant) var(--fcb-list-font-size, 14px/14px) var(--fcb-list-font-family), sans-serif !important;
  letter-spacing: var(--fcb-list-letter-spacing, normal);
  text-transform: var(--fcb-list-text-transform, none);
}
.fcb .fcb-dot{
  width:10px;height:10px;border-radius:50%;
  background: #E5E7EB; border:0; cursor:pointer; padding:0;
}
.fcb .fcb-dot.is-active{ background: var(--fcb-bullet, #6B5DE7); }

/* Keep bucket CTA clickable above stretched overlay */
.fcb-actions, .fcb-actions .fcb-btn {
  position: relative;
  z-index: 2;
  margin-top: 37px;
}

/* Make the bucket a positioning context */
.fcb-bucket{
  position: relative;
}

/* Full-bucket clickable overlay */
.fcb-stretched-link{
  position: absolute;
  inset: 0;
  z-index: 1;                 /* below any explicit buttons/links we raise to 2 */
  border-radius: inherit;     /* match your card corners */
  text-indent: -9999px;       /* hide text if any */
  overflow: hidden;
}

/* Keep inner interactive elements usable above the overlay */
.fcb-bucket a:not(.fcb-stretched-link),
.fcb-bucket button,
.fcb-bucket [role="button"]{
  position: relative;
  z-index: 2;
}
/* Mobile slider */
@media (min-width: 768px){
  .fcb .fcb-bullets { display: none !important; }
}
@media (max-width: 767px){
  .fcb .fcb-track{
    display: flex !important;
		flex-wrap: nowrap !important;
		flex-direction: row !important;
		justify-content: flex-start !important;
		overflow: hidden !important;
    width: -webkit-fill-available;
    margin-left: -30px;
    margin-right: -30px;
    gap: 20px;
  }
  .fcb .fcb-track.is-slider{
    display:flex; gap: var(--fcb-gap, 16px); scroll-behavior: smooth;
    will-change: transform;
  }
  .fcb .fcb-bucket{ 
    flex: 0 0 100%; 
    max-width: calc(100% - 60px); 
    padding: var(--fcb-mobile-bucket-pad, 20px 20px 20px 20px);
  }
  .fcb .fcb-bucket:first-of-type{margin-left: 30px;}
  .fcb .fcb-bucket:last-of-type{margin-right: 30px;}
  .fcb .fcb-bullets{ display:flex;justify-content: center;padding-top: 30px; }
}
