.biotik-steps-01 {
    --biotik-steps-columns: var(--biotik-steps-local-columns, var(--bs-global-steps-columns, 3));
    --biotik-steps-gap: var(--biotik-steps-local-gap, var(--bs-global-steps-gap, 24px));
    --biotik-steps-card-height: var(--biotik-steps-local-card-height, var(--bs-global-steps-card-min-height, 310px));
    --biotik-steps-icon-size: var(--biotik-steps-local-icon-size, var(--bs-global-steps-icon-size, 34px));
    --biotik-steps-arrow-size: var(--biotik-steps-local-arrow-size, var(--bs-global-steps-arrow-size, 46px));
    width: 100%;
    max-width: var(--bs-global-steps-max-width, 1280px);
    margin-inline: auto;
}
.biotik-steps-01__header { max-width: var(--bs-global-steps-header-max-width, 780px); margin: 0 0 var(--bs-global-steps-header-gap, 48px); }
.biotik-steps-01__eyebrow {
    margin: 0 0 12px;
    color: var(--bs-global-steps-eyebrow-color, #3e6642);
    font-family: var(--bs-global-steps-eyebrow-font-family, inherit);
    font-size: var(--bs-global-steps-eyebrow-size, 12px);
    font-weight: var(--bs-global-steps-eyebrow-weight, 700);
    line-height: var(--bs-global-steps-eyebrow-line-height, 1.35);
    letter-spacing: var(--bs-global-steps-eyebrow-letter-spacing, .11em);
    text-transform: var(--bs-global-steps-eyebrow-transform, uppercase);
}
.biotik-steps-01__title {
    margin: 0;
    color: var(--bs-global-steps-title-color, #183126);
    font-family: var(--bs-global-steps-title-font-family, inherit);
    font-size: var(--bs-global-steps-title-size, 52px);
    font-weight: var(--bs-global-steps-title-weight, 650);
    line-height: var(--bs-global-steps-title-line-height, 1.08);
    letter-spacing: var(--bs-global-steps-title-letter-spacing, -.035em);
}
.biotik-steps-01__intro {
    margin-top: 18px;
    color: var(--bs-global-steps-intro-color, #50575e);
    font-family: var(--bs-global-steps-intro-font-family, inherit);
    font-size: var(--bs-global-steps-intro-size, 17px);
    font-weight: var(--bs-global-steps-intro-weight, 400);
    line-height: var(--bs-global-steps-intro-line-height, 1.65);
}
.biotik-steps-01__intro > :first-child,
.biotik-steps-01__text > :first-child { margin-top: 0; }
.biotik-steps-01__intro > :last-child,
.biotik-steps-01__text > :last-child { margin-bottom: 0; }
.biotik-steps-01__shell { position: relative; }
.biotik-steps-01__track { margin: 0; padding: 0; list-style: none; }

.biotik-steps-01--variant-cards .biotik-steps-01__track {
    display: grid;
    grid-template-columns: repeat(var(--biotik-steps-columns), minmax(0, 1fr));
    gap: var(--biotik-steps-gap);
}
.biotik-steps-01--variant-slider .biotik-steps-01__viewport {
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
}
.biotik-steps-01--variant-slider .biotik-steps-01__viewport::-webkit-scrollbar { display: none; }
.biotik-steps-01--variant-slider .biotik-steps-01__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - (var(--biotik-steps-columns) - 1) * var(--biotik-steps-gap)) / var(--biotik-steps-columns));
    gap: var(--biotik-steps-gap);
}
.biotik-steps-01--variant-slider .biotik-steps-01__item { scroll-snap-align: start; scroll-snap-stop: always; }

.biotik-steps-01__card {
    position: relative;
    display: flex;
    min-height: var(--biotik-steps-card-height);
    height: 100%;
    flex-direction: column;
    padding: var(--bs-global-steps-card-padding, 32px);
    overflow: hidden;
    border: var(--bs-global-steps-border-width, 1px) solid var(--bs-global-steps-border-color, #dfe6dc);
    border-radius: var(--bs-global-steps-radius, 18px);
    background: var(--bs-global-steps-background, #f5f7f3);
    box-shadow: 0 var(--bs-global-steps-shadow-y, 10px) var(--bs-global-steps-shadow-blur, 30px) var(--bs-global-steps-shadow, rgba(0,0,0,0));
    transition: transform var(--bs-global-steps-animation-duration, 460ms) cubic-bezier(.2,.7,.2,1), background-color 240ms ease, border-color 240ms ease, box-shadow 240ms ease;
}
.biotik-steps-01__card::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 4px;
    background: var(--bs-global-steps-accent, #3e6642);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 260ms ease;
}
.biotik-steps-01__item.is-current .biotik-steps-01__card,
.biotik-steps-01__card:hover {
    transform: translateY(-5px);
    border-color: var(--bs-global-steps-accent, #3e6642);
    background: var(--bs-global-steps-active-background, #eef3e3);
    box-shadow: 0 14px 36px rgba(24,49,38,.10);
}
.biotik-steps-01__item.is-current .biotik-steps-01__card::after,
.biotik-steps-01__card:hover::after { transform: scaleX(1); }
.biotik-steps-01__topline { display: flex; min-height: var(--biotik-steps-icon-size); align-items: center; justify-content: space-between; gap: 16px; margin-bottom: auto; }
.biotik-steps-01__number {
    color: var(--bs-global-steps-number-color, #3e6642);
    font-family: var(--bs-global-steps-number-font-family, inherit);
    font-size: var(--bs-global-steps-number-size, 13px);
    font-weight: var(--bs-global-steps-number-weight, 700);
    line-height: var(--bs-global-steps-number-line-height, 1.2);
    letter-spacing: var(--bs-global-steps-number-letter-spacing, .08em);
}
.biotik-steps-01__icon {
    display: grid;
    width: var(--biotik-steps-icon-size);
    height: var(--biotik-steps-icon-size);
    place-items: center;
    color: var(--bs-global-steps-icon-color, #3e6642);
}
.biotik-steps-01__icon svg,
.biotik-steps-01__icon i { width: 100%; height: 100%; font-size: var(--biotik-steps-icon-size); fill: currentColor; }
.biotik-steps-01:not(.biotik-steps-01--show-icons) .biotik-steps-01__icon,
.biotik-steps-01:not(.biotik-steps-01--show-numbers) .biotik-steps-01__number { display: none; }
.biotik-steps-01__item-title {
    margin: 38px 0 14px;
    color: var(--bs-global-steps-item-title-color, #183126);
    font-family: var(--bs-global-steps-item-title-font-family, inherit);
    font-size: var(--bs-global-steps-item-title-size, 29px);
    font-weight: var(--bs-global-steps-item-title-weight, 650);
    line-height: var(--bs-global-steps-item-title-line-height, 1.16);
    letter-spacing: var(--bs-global-steps-item-title-letter-spacing, -.02em);
}
.biotik-steps-01__text {
    color: var(--bs-global-steps-item-text-color, #5d6761);
    font-family: var(--bs-global-steps-item-text-font-family, inherit);
    font-size: var(--bs-global-steps-item-text-size, 16px);
    font-weight: var(--bs-global-steps-item-text-weight, 400);
    line-height: var(--bs-global-steps-item-text-line-height, 1.65);
}
.biotik-steps-01__link {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 10px;
    margin-top: 24px;
    color: var(--bs-global-steps-link-color, #3e6642);
    font-family: var(--bs-global-steps-link-font-family, inherit);
    font-size: var(--bs-global-steps-link-size, 15px);
    font-weight: var(--bs-global-steps-link-weight, 700);
    line-height: var(--bs-global-steps-link-line-height, 1.2);
    text-decoration: none;
}
.biotik-steps-01__link span { transition: transform 180ms ease; }
.biotik-steps-01__link:hover span { transform: translateX(4px); }

.biotik-steps-01--variant-timeline .biotik-steps-01__track {
    position: relative;
    display: grid;
    grid-template-columns: repeat(var(--biotik-steps-columns), minmax(0, 1fr));
    gap: var(--biotik-steps-gap);
}
.biotik-steps-01--variant-timeline .biotik-steps-01__track::before {
    content: "";
    position: absolute;
    inset: 31px 0 auto;
    height: 2px;
    background: var(--bs-global-steps-line-color, #cbd8cd);
}
.biotik-steps-01--variant-timeline .biotik-steps-01__item { position: relative; padding-top: 64px; }
.biotik-steps-01--variant-timeline .biotik-steps-01__item::before {
    content: "";
    position: absolute;
    top: 22px;
    left: 0;
    width: 20px;
    height: 20px;
    border: 5px solid #fff;
    border-radius: 50%;
    background: var(--bs-global-steps-accent, #3e6642);
    box-shadow: 0 0 0 1px var(--bs-global-steps-line-color, #cbd8cd);
}
.biotik-steps-01--variant-timeline .biotik-steps-01__card { min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.biotik-steps-01--variant-timeline .biotik-steps-01__card::after { display: none; }
.biotik-steps-01--variant-timeline .biotik-steps-01__card:hover { transform: none; background: transparent; box-shadow: none; }
.biotik-steps-01--variant-timeline .biotik-steps-01__item-title { margin-top: 24px; }

.biotik-steps-01__navigation { display: flex; justify-content: flex-end; gap: 10px; margin-top: 26px; }
.biotik-steps-01__arrow {
    appearance: none;
    display: grid;
    width: var(--biotik-steps-arrow-size);
    height: var(--biotik-steps-arrow-size);
    padding: 0;
    place-items: center;
    border: 1px solid var(--bs-global-steps-border-color, #dfe6dc);
    border-radius: 999px;
    background: var(--bs-global-steps-arrow-background, #fff);
    color: var(--bs-global-steps-arrow-color, #183126);
    cursor: pointer;
    transition: transform 180ms ease, background-color 180ms ease, color 180ms ease;
}
.biotik-steps-01__arrow:hover { transform: translateY(-2px); background: var(--bs-global-steps-accent, #3e6642); color: #fff; }
.biotik-steps-01__arrow:disabled { opacity: .35; cursor: default; transform: none; }
.biotik-steps-01__arrow svg,
.biotik-steps-01__arrow i { width: 18px; height: 18px; font-size: 18px; }
.biotik-steps-01__dots { display: flex; justify-content: center; gap: 8px; margin-top: 18px; }
.biotik-steps-01__dot { width: 8px; height: 8px; padding: 0; border: 0; border-radius: 999px; background: color-mix(in srgb, var(--bs-global-steps-accent, #3e6642) 28%, transparent); cursor: pointer; transition: width 180ms ease, background-color 180ms ease; }
.biotik-steps-01__dot.is-active { width: 26px; background: var(--bs-global-steps-accent, #3e6642); }

.biotik-steps-01 [data-biotik-reveal] { transition-duration: var(--bs-global-steps-animation-duration, 460ms); }
.biotik-steps-01--animation-fade [data-biotik-reveal],
.biotik-steps-01--animation-fade-up [data-biotik-reveal],
.biotik-steps-01--animation-scale [data-biotik-reveal] { opacity: 0; transition-property: opacity, transform; transition-timing-function: cubic-bezier(.2,.7,.2,1); }
.biotik-steps-01--animation-fade-up [data-biotik-reveal] { transform: translateY(24px); }
.biotik-steps-01--animation-scale [data-biotik-reveal] { transform: scale(.96); }
.biotik-steps-01 [data-biotik-reveal].is-visible { opacity: 1; transform: none; }

@media (max-width: 767px) {
    .biotik-steps-01__header { margin-bottom: 32px; }
    .biotik-steps-01__navigation { justify-content: center; }
    .biotik-steps-01--variant-timeline .biotik-steps-01__track { display: grid; grid-template-columns: 1fr; gap: 28px; padding-left: 34px; }
    .biotik-steps-01--variant-timeline .biotik-steps-01__track::before { inset: 0 auto 0 9px; width: 2px; height: auto; }
    .biotik-steps-01--variant-timeline .biotik-steps-01__item { padding-top: 0; }
    .biotik-steps-01--variant-timeline .biotik-steps-01__item::before { top: 8px; left: -34px; }
}
@media (prefers-reduced-motion: reduce) {
    .biotik-steps-01 *, .biotik-steps-01 *::before, .biotik-steps-01 *::after { scroll-behavior: auto !important; transition-duration: 1ms !important; animation-duration: 1ms !important; }
    .biotik-steps-01 [data-biotik-reveal] { opacity: 1 !important; transform: none !important; }
}
