.planovo-features {
    --pf-accent: #00a76f;
    --pf-text: #071014;
    --pf-muted: #49666b;
    --pf-border: #d8e5e7;
    --pf-background: #fff;
    --pf-tab: #e2ecee;
    --pf-sticky-offset: 0px;
    color: var(--pf-text)
}

.planovo-features {
    .planovo-features__heading {
        position: relative;

        &:after {
            content: "";
            left: 0;
            top: 0;
            height: 0px;
            width: 100%;
            background: #FFF;
            background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(237, 221, 83, 0) 100%);
            position: absolute;
            transition: all .2s ease-in-out;
        }
    }
}

.planovo-features.has-open {
    .planovo-features__heading {
        position: relative;

        &:after {
            top: -110px;
            height: 110px;
        }
    }
}

.planovo-features * {
    box-sizing: border-box
}

.planovo-features__heading {
    display: grid;
    grid-template-columns: 1fr minmax(180px, 23%);
    align-items: end;
    padding: 0 28px;
    background: #FFF;
    transition: box-shadow .2s ease
}

.planovo-features.has-open .planovo-features__heading {
    position: sticky;
    z-index: 20;
    top: calc(var(--header-height, 0px) + var(--pf-sticky-offset, 0px));
    /* box-shadow: 0 10px 22px -22px rgba(7, 16, 20, .45) */
}

body.admin-bar .planovo-features.has-open .planovo-features__heading {
    top: calc(var(--header-height, 0px) + var(--pf-sticky-offset, 0px) + 32px)
}

.planovo-features__eyebrow {
    padding: 0 0 14px;
    font-family: Manrope;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 115%;
    /* 23px */
    letter-spacing: -0.8px;
}

.planovo-features__tab {
    padding: 24px 100px;
    border-radius: 10px 10px 0 0;
    background: var(--pf-tab);
    font-size: 18px;
    text-align: center
}

.planovo-features__list {
    display: grid;
    gap: 10px
}

.planovo-features__item {
    overflow: hidden;
    border: 1px solid var(--pf-border);
    border-radius: 22px;
    background: var(--pf-background)
}

.planovo-features__trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 80px;
    padding: 30px !important;
    border: 0;
    background: transparent;
    color: var(--pf-text);
    font: inherit;
    text-align: left;
    cursor: pointer
}

.planovo-features__trigger:hover,
.planovo-features__trigger:focus {
    background: transparent;
    color: var(--pf-text)
}

.planovo-features__trigger:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--pf-accent) 28%, transparent);
    outline-offset: -6px
}

.planovo-features__identity {
    display: flex;
    align-items: center;
    gap: 18px;
    min-width: 0
}

.planovo-features__icon {
    display: grid;
    flex: 0 0 28px;
    place-items: center;
    width: 40px;
    height: 40px;
    aspect-ratio: 1/1;
    color: var(--pf-accent);
    font-size: 26px
}

.planovo-features__icon svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: currentColor
}

.planovo-features__badge {
    display: block;
    margin-bottom: 1px;
    color: var(--pf-accent);
    font-family: 'Manrope';
    font-size: 16px;
    font-weight: 500;
    line-height: 115%;
    letter-spacing: 0.32px;
    text-transform: uppercase;
}

.planovo-features__title {
    display: block;
    font-size: 24px;
    font-weight: 500;
    line-height: 110%;
    /* 26.4px */
    letter-spacing: -0.96px;
}

.planovo-features__arrow {
    display: block;
    flex: 0 0 18px;
    width: 18px;
    height: 10px;
    color: var(--pf-accent);
    transform-origin: center
}

.planovo-features__arrow svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.5
}

.planovo-features__panel {
    overflow: hidden
}

.planovo-features__rows {
    padding: 0 40px 10px
}

.planovo-features__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(40px, 20%);
    align-items: center;
    min-height: 104px;
    padding: 20px 0;
    border-top: 1px solid var(--pf-border)
}

.planovo-features__row:first-child {
    border-top: 0
}

.planovo-features__row-title {
    font-size: 17px;
    font-weight: 500;
    line-height: 1.25
}

.planovo-features__row-description {
    max-width: 520px;
    margin-top: 7px;
    color: var(--pf-muted);
    font-size: 15px;
    line-height: 1.25
}

.planovo-features__check {
    display: grid;
    place-items: center;
    width: 25px;
    height: 25px;
    justify-self: center;
    border-radius: 50%;
    background: color-mix(in srgb, var(--pf-accent) 20%, white);
    color: var(--pf-accent)
}

.planovo-features__check svg {
    width: 13px;
    height: 11px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2
}

@media(max-width:767px) {
    .planovo-features__heading {
        grid-template-columns: 1fr auto;
        padding: 0 16px
    }

    .planovo-features__eyebrow {
        padding-bottom: 10px;
        font-size: 13px
    }

    .planovo-features__tab {
        padding: 12px 18px;
        font-size: 14px
    }

    .planovo-features__list {
        gap: 8px
    }

    .planovo-features__item {
        border-radius: 16px
    }

    .planovo-features__trigger {
        min-height: 66px;
        padding: 14px 18px
    }

    .planovo-features__identity {
        gap: 12px
    }

    .planovo-features__title {
        font-size: 17px
    }

    .planovo-features__rows {
        padding: 0 18px 6px
    }

    .planovo-features__row {
        grid-template-columns: minmax(0, 1fr) 34px;
        min-height: 88px
    }

    .planovo-features__row-title {
        font-size: 15px
    }

    .planovo-features__row-description {
        font-size: 13px
    }

    .planovo-features__check {
        justify-self: end
    }
}