.tarifs__container {
    margin-top: 40px;
    display: flex;
    flex-wrap: nowrap;
    border: 1px solid var(--color-border);
    border-radius: 32px;
    flex-grow: 1;
    flex-basis: auto;
}

.tarifs-card {
    border-right: 1px solid var(--color-border);
    padding: 90px 18px 32px 18px;
    flex: 1;
    margin: 0;
    font-size: 28px;
    position: relative;
}

.tarifs-card:last-of-type {
    border: none;
}

.tarifs-card__title {
    margin-bottom: 8px;
    font-size: var(--landing-main-H4-size);
    font-weight: var(--landing-main-H4-weight);
    line-height: var(--landing-main-H4-line-height);
    letter-spacing: var(--landing-main-H4-letter-spacing);
}

.tarifs-card__subtitle {
    margin-bottom: 32px;
    height: 46px;
    overflow: hidden;
    font-size: var(--landing-main-body-size);
    font-weight: var(--landing-main-body-weight-medium);
    line-height: var(--landing-main-body-line-height-short);
}

.tarifs-card__cost {
    font-size: var(--landing-main-H2-size);
    font-weight: var(--landing-main-H2-weight);
    line-height: var(--landing-main-H2-line-height);
    letter-spacing: var(--landing-main-H2-letter-spacing);
    position: relative;
}

.tarifs-cta .tarifs-card__cost-month {
    position: absolute;
    top: 14px;
    right: -76px;
}

.tarifs-card__cost-month {
    color: var(--color-gray);
    position: relative;
    white-space: nowrap;
    display: block;
    margin: 4px auto auto auto;
    font-size: var(--landing-main-caption-xs-size);
    font-weight: var(--landing-main-caption-xs-weight);
    line-height: var(--landing-main-caption-xs-line-height-long);
    letter-spacing: 0;
}

.tarifs-card__cost-values {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    justify-content: center;
    align-items: baseline;
    gap: 0;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.tarifs-card__cost-value {
    display: flex;
    flex-direction: row;
    align-items: baseline;
}

.tarifs-card__cost-value-old {
    color: #ADAAB1;
    position: relative;
    white-space: nowrap;
    display: none;
    margin: auto;
    margin: 0;
    text-decoration: line-through;
    font-size: var(--landing-main-H4-size);
    font-weight: var(--landing-main-H4-weight);
    line-height: var(--landing-main-H4-line-height);
    letter-spacing: var(--landing-main-H4-letter-spacing);
}

.tarifs-card__cost-value.is--active + .tarifs-card__cost-value-old {
    display: block;
}

.tarifs-card__options {
    margin-top: 40px;
    list-style: none;
    text-align: left;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 0;
    align-items: baseline;
}

.tarifs-card__options {
    margin-top: 40px;
    list-style: none;
    text-align: left;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 0;
    align-items: baseline;
    font-weight: 500;
    font-size: 14px;
}

.tarifs-card__options i {
    font-style: normal;
    color: var(--color-gray);
}

.tarifs-card__options--unavailable {
    color: var(--color-gray);
}

.tarifs-card__options-unlimited {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M2.0835 7.99996C2.0835 9.4267 3.24009 10.5833 4.66683 10.5833C5.24926 10.5833 5.78471 10.3914 6.2164 10.0672C6.54759 9.81843 7.01774 9.88525 7.26651 10.2164C7.51527 10.5476 7.44845 11.0178 7.11726 11.2665C6.43474 11.7792 5.58521 12.0833 4.66683 12.0833C2.41167 12.0833 0.583497 10.2551 0.583496 7.99996C0.583496 5.7448 2.41167 3.91663 4.66683 3.91663C6.92199 3.91663 8.75016 5.7448 8.75016 7.99996C8.75016 9.42669 9.90676 10.5833 11.3335 10.5833C12.7602 10.5833 13.9168 9.42669 13.9168 7.99996C13.9168 6.57322 12.7602 5.41663 11.3335 5.41663C10.751 5.41663 10.2154 5.60854 9.78368 5.93291C9.45252 6.18172 8.98236 6.11496 8.73355 5.7838C8.48474 5.45264 8.5515 4.98248 8.88266 4.73367C9.56526 4.22083 10.4149 3.91663 11.3335 3.91663C13.5887 3.91663 15.4168 5.7448 15.4168 7.99996C15.4168 10.2551 13.5887 12.0833 11.3335 12.0833C9.07833 12.0833 7.25016 10.2551 7.25016 7.99996C7.25016 6.57322 6.09356 5.41663 4.66683 5.41663C3.24009 5.41663 2.0835 6.57323 2.0835 7.99996Z' fill='%23B645EE'/%3E%3C/svg%3E");
}

.tarifs-card__icon {
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translateX(-50%);
    width: 44px;
}

.tarifs-cta {
    border-radius: 32px;
    border: 1px solid var(--color-border);
    align-items: center;
    padding: 24px 32px 24px 40px;
    display: flex;
    /* gap: 90px; */
    justify-content: space-between;
    align-items: center;
    margin: 20px 0 0 0;
}

.tarifs-card__cost-current, .tarifs-card__options-per-current {
    color: #ADAAB1;
    margin-left: -3px;
    display: none;
    text-decoration: line-through;
}

.tarifs-cta__button {
}

.tarifs-cta__content {
    margin-left: 120px;
    margin-right: auto;
}

.tarifs-cta__content h4 {
    margin-bottom: 8px;
}

.tarifs-cta__price {
    position: relative;
}

.tarifs-individual {
    padding: 32px 32px 32px 40px;
    margin: 20px 0 0 0;
    position: relative;
    border-radius: 32px;
    overflow: hidden;
}

.tarifs-individual div {
    position: relative;
    z-index: 1;
}

.tarifs-individual__img {
    height: 100%;
    min-width: 100%;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
}

.tarifs-individual__title {
    color: #ffffff;
    margin-bottom: 20px;
    font-size: var(--landing-main-H3-size);
    font-weight: var(--landing-main-H3-weight);
    line-height: var(--landing-main-H3-line-height);
    letter-spacing: var(--landing-main-H3-letter-spacing);
}

.tarifs-individual__subtitle {
    color: #ffffff;
    font-size: 15px;
    font-weight: 500;
    line-height: 150%;
    margin-bottom: 20px;
}

.tarifs-individual__options {
    color: #ffffff;
    list-style: none;
    margin: 0;
    padding: 0;
}

.tarifs-individual__options-icon {
    background-color: #ffffff;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: 16px auto;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    min-width: 16px;
    height: 12px;
    display: inline-block;
    background-size: 16px auto;
}

.tarifs-individual__options-icon img {
    display: none;
}

.tarifs-individual__options-item {
    color: #ffffff;
    font-size: var(--landing-main-body-size);
    font-weight: var(--landing-main-body-weight-medium);
    line-height: var(--landing-main-body-line-height-short);
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.tarifs-individual__options-item:last-of-type {
    padding: 0!important;
}

.tarifs-card__options-per-value {
    display: inline-block;
}

.tarifs-card__options-per-current {
    margin-left: 4px;
}

.tarifs-card__cost-form {
    font-size: 24px;
    margin-right: 8px;
}

.tarifs-card__cost-content {
    white-space: nowrap;
}

.tarifs-card__cost-current {
    font-size: 28px;
    line-height: 1;
    transform: translate(8px, -19px);
}

.tarifs-card__total-cost {
    margin-top: 4px;
    display: none;
    font-size: var(--landing-main-body-size);
    font-weight: var(--landing-main-body-weight-medium);
    line-height: var(--landing-main-body-line-height-short);
}

.tarifs__filter {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.tarifs__filter .list-selector {
    margin: 0;
}

.list-selector.tarifs-tabs {
    min-width: 320px;
}

.tarifs-tab__discount {
    border-radius: 6px;
    background: #1AC47A;
    padding: 2px 8px;
    text-transform: uppercase;
    color: #ffffff;
    font-size: var(--landing-main-body-size);
    font-weight: var(--landing-main-body-weight-semibold);
    line-height: var(--landing-main-body-line-height-short);
}

.tarfis-card__calculator.calculator {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.calculator {
}

.calculator__row {
    display: flex;
    flex-wrap: nowrap;
    gap: 12px;
    align-items: center;
}

.calculator .list-selector {
    max-height: 32px;
}

.calculator__title {
    text-align: left;
    max-width: 92px;
    font-size: var(--landing-main-caption-xs-size);
    font-weight: var(--landing-main-caption-xs-weight);
    line-height: var(--landing-main-caption-xs-line-height-long);
}

.calculator .list-selector__selected {
    padding: 3px 8px;
    min-height: 40px;
    border-radius: 8px;
    max-width: 90px;
}

.calculator .list-selector__title {
    margin: auto;
    padding-left: 2px;
    font-size: var(--landing-main-caption-size);
    font-weight: var(--landing-main-caption-weight);
    line-height: var(--landing-main-caption-line-height-long);
}

.calculator .list-selector__main .list-selector__title {
    padding-left: 20px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

@media screen and (min-width: 1047px) {
    .digits-7 .tarifs-card__cost-value .value, .digits-8 .tarifs-card__cost-value .value {
        font-size: 32px;
    }

    .digits-7 .tarifs-card__cost-value-old, .digits-8 .tarifs-card__cost-value-old {
        font-size: 20px;
    }

    .calculator .list-selector__title {
        padding-left: 4px;
    }

    .calculator .list-selector.is-open .list-selector__list {
        transform: translateX(2px);
    }

    .calculator .list-selector__main .list-selector__title {
        padding-left: 24px;
    }
}

@media screen and (max-width: 1047px) {
    .tarifs-tabs {
        flex-wrap: nowrap;
        white-space: nowrap;
        margin-right: -12px;
        max-width: calc(100% + 24px);
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        margin-left: -12px;
        padding: 0;
        margin-bottom: 26px;
    }

    .tarifs-card {
        padding: 76px 20px 20px 20px;
    }

    .tarifs-card {
        margin-top: 16px;
        border-radius: 32px;
        border: 1px solid var(--color-border);
    }

    .tarifs-card:last-of-type {
        border: 1px solid var(--color-border);
    }

    .tarifs-cta__price .tarifs-card__cost-month {
        position: relative;
        top: auto;
        right: auto;
        margin-top: 8px;
    }

    .tarifs-card__options {
        align-items: baseline;
        gap: 12px;
        margin-top: 24px;
    }

    .tarifs-card__icon {
        top: -8px;
    }

    .tarifs-cta {
        flex-direction: column;
        align-items: center;
        padding: 24px 20px;
    }

    .tarifs-cta__button {
        order: 3;
    }

    .tarifs-cta__content {
        text-align: center;
        order: 1;
        margin: auto;
    }

    .tarifs-cta__price {
        order: 3;
        text-align: center;
    }

    .tarifs__container {
        display: block;
        border: none;
        margin: 0;
    }

    .tarifs-card__subtitle {
        height: auto;
        overflow: visible;
        margin-bottom: 20px;
    }

    .tarifs-tabs::-webkit-scrollbar {
        display: none;
    }

    .tarifs-tabs::-webkit-scrollbar-thumb {
        display: none;
    }

    .tarifs-tabs::-webkit-scrollbar-track {
        display: none;
    }

    .tarifs-individual__options {
        margin-top: 16px;
    }

    .tarifs-individual__options-icon img {
        display: none;
    }

    .tarifs-cta {
        gap: 20px;
    }

    .tarifs-cta, .tarifs-individual {
        margin-top: 16px;
    }

    .tarifs-cta .tarifs-card__options-item {
        text-align: center;
    }

    .tarifs-card__cost-value-old {
        transform: translate(4px, 0);
    }

    .tarifs-card__options--unavailable {
        height: auto !important;
    }

    .tarfis-card__calculator.calculator {
        gap: 10px;
    }

    .calculator__title {
        max-width: max-content;
    }

    .tarifs-tabs .list-selector__selected {
        margin-right: 16px;
        width: 100%;
    }

    .calculator .list-selector {
        max-height: 40px;
    }

    .calculator .list-selector__selected {
        min-height: 40px;
        padding-left: 16px;
        padding-right: 16px;
        min-width: 168px;
    }

    .number-stepper {
        min-height: 40px;
        min-width: 168px;
    }

    .tarifs-tab__discount span {
        display: none;
    }

    .list-selector.tarifs-tabs {
        min-width: 260px;
        width: 100%;
    }

    .calculator__row {
        margin-left: 14%;
        margin-right: auto;
    }
}

@media screen and (max-width: 420px) {
    .calculator__row {
        margin-left: 0;
        margin-right: 0;
    }
}

/* tarif compare */
#tarif-compare .popup-wrapper {
    width: calc(100% - 20px);
    max-width: 1000px;
    padding: 0px 5px 16px 24px;
}

#tarif-compare .popup {
    padding-right: 19px;
}

#tarif-compare .popup-close {
    right: 16px;
}

.tarif-compare__header {
}

.tarif-table {
    display: table;
    width: 100%;
}

.tarif-table__row {
    display: table-row;
    width: 100%;
}

.tarif-table__row:first-of-type .tarif-table__item, .tarif-table__row--header .tarif-table__item {
    border-radius: 8px 8px 0 0;
}

.tarif-table--body .tarif-table__row:first-of-type .tarif-table__item {
    border-radius: 0;
}

.tarif-table__row--header.is--sticky .tarif-table__item {
    border-radius: 0;
}

.tarif-compare__switch {
    position: absolute;
    top: 22px;
    right: 60px;
    display: flex;
    align-items: center;
    gap: 12px;
    line-height: 1;
}

.tarif-table__item {
    padding: 10px 12px;
    background: #F9F9FC;
    height: 100%;
    display: table-cell;
    margin-left: 16px;
    border-left: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    min-width: 130px;
    max-width: 130px;
    vertical-align: middle;
    /* text-align: center; */
}

.tarif-table__row .tarif-table__item:first-of-type {
    width: 30%;
    background: transparent;
    padding: 10px 0;
    max-width: 390px;
    min-width: 285px;
    font-size: var(--landing-main-body-size);
    font-weight: var(--landing-main-body-weight-medium);
    line-height: var(--landing-main-body-line-height-short);
}

.tarif-table__row .tarif-table__item:nth-child(2) {
    background: #EEEEF0;
}

.tarif-table__row:last-of-type:not(.tarif-table__row--header) .tarif-table__item {
    border-radius: 0 0 8px 8px;
}

.tarif-table--buttons .tarif-table__item {
    background: none !important;
    padding: 0 !important;
}

.tarif-table--buttons .mobile {
    display: none;
}

.tarif-table__item i {
    display: block;
    text-align: center;
    overflow: hidden;
    color: #ADAAB1;
    text-align: center;
    font-size: var(--landing-main-caption-xxs-size);
    font-style: normal;
    font-weight: var(--landing-main-caption-xxs-weight);
    line-height: var(--landing-main-caption-xxs-line-height-long);
}

.tarif-table__item .btn {
    width: max-content;
    padding: 0;
}

.tarif-table__item--title {
    text-align: center;
    text-align: center;
    padding: 17px 0;
    border-radius: 8px 8px 0 0;
    font-size: var(--landing-main-subtitle-lg-size);
    font-weight: var(--landing-main-subtitle-lg-weight);
    line-height: var(--landing-main-subtitle-lg-line-height);
    letter-spacing: var(--landing-main-subtitle-lg-letter-spacing, -0.5px);
}

.tarif-table--header {
    position: sticky;
    top: 0;
    z-index: 21;
    background: #fff;
}

.tarif-table__item .text, .tarif-table__item .checkbox {
    margin: auto;
    text-align: center;
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: var(--landing-main-caption-xs-size);
    font-weight: var(--landing-main-caption-xs-weight);
    line-height: var(--landing-main-caption-xs-line-height-long);
}

.tarif-table__item .text i {
    white-space: normal;
}

.tarif-table__item-content {
    display: block;
    width: 9vw;
    max-width: 101px;
    margin: auto;
    text-align: center;
}

.tarif-table__item .text[data-value], .tarif-table__item .checkbox {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='20' viewBox='0 0 21 20' fill='none'%3E%3Cpath d='M10.7 1.66666C6.10837 1.66666 2.3667 5.40832 2.3667 9.99999C2.3667 14.5917 6.10837 18.3333 10.7 18.3333C15.2917 18.3333 19.0334 14.5917 19.0334 9.99999C19.0334 5.40832 15.2917 1.66666 10.7 1.66666ZM13.9667 10.625H7.30003C6.95837 10.625 6.67503 10.3417 6.67503 9.99999C6.67503 9.65832 6.95837 9.37499 7.30003 9.37499H13.9667C14.3084 9.37499 14.5917 9.65832 14.5917 9.99999C14.5917 10.3417 14.3167 10.625 13.9667 10.625Z' fill='%23CECDD1'/%3E%3C/svg%3E");
    min-width: 20px;
    min-height: 20px;
    max-width: 20px;
    max-height: 20px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 20px auto;
    text-indent: -9999px;
}

.tarif-table__item .checkbox[data-value='11'] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='20' viewBox='0 0 21 20' fill='none'%3E%3Cpath d='M10.7 1.66669C6.10837 1.66669 2.3667 5.40835 2.3667 10C2.3667 14.5917 6.10837 18.3334 10.7 18.3334C15.2917 18.3334 19.0334 14.5917 19.0334 10C19.0334 5.40835 15.2917 1.66669 10.7 1.66669ZM14.6834 8.08335L9.95837 12.8084C9.8417 12.925 9.68337 12.9917 9.5167 12.9917C9.35003 12.9917 9.1917 12.925 9.07503 12.8084L6.7167 10.45C6.47503 10.2084 6.47503 9.80835 6.7167 9.56669C6.95837 9.32502 7.35837 9.32502 7.60003 9.56669L9.5167 11.4834L13.8 7.20002C14.0417 6.95835 14.4417 6.95835 14.6834 7.20002C14.925 7.44169 14.925 7.83335 14.6834 8.08335Z' fill='%231AC47A'/%3E%3C/svg%3E");
}

.tarif-table__divider {
    margin: 32px 0 0 0;
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    font-size: var(--landing-main-subtitle-lg-size);
    font-weight: var(--landing-main-subtitle-lg-weight);
    line-height: var(--landing-main-subtitle-lg-line-height);
    letter-spacing: var(--landing-main-subtitle-lg-letter-spacing);
}

.tarif-table__divider svg {
    transition: all .3s ease-in-out;
}

.tarif-table__collapse.is--collapsed svg, .tarif-table__collapse[aria-expanded="false"] svg {
    transform: rotate(180deg);
}

.tarif-table__collapse.is--collapsed .collapsed__content {
    display: none;
}

.switcher {
    cursor: pointer;
    position: relative;
    transition: background-color .3s ease-in-out;
    width: 40px;
    height: 24px;
    flex-shrink: 0;
    border-radius: 24px;
    background: #CECDD1;
}

.switcher.is--active {
    background-color: var(--color-violet);
}

.switcher i {
    width: 16px;
    height: 16px;
    border-radius: 16px;
    background-color: #ffffff;
    display: block;
    position: absolute;
    top: 4px;
    left: 4px;
    transition: left .3s;
}

.switcher.is--active i {
    background-color: white;
    left: 20px;
}

.switcher__text {
    font-size: var(--landing-main-body-size);
    font-weight: var(--landing-main-body-weight-medium);
    line-height: var(--landing-main-body-line-height-short);
}

.tarif-table__row.is--hidden {
    display: none;
}

@media screen and (max-width: 1047px) {
    .tarif-table__item {
        min-width: calc(20vw - 305px);
        max-width: calc(20vw - 305px);
        font-size: var(--landing-main-caption-xs-size);
        font-weight: var(--landing-main-caption-xs-weight);
        line-height: var(--landing-main-caption-xs-line-height-long);
        letter-spacing: var(--landing-main-caption-xs-letter-spacing);
    }
}

@media screen and (max-width: 890px) {
    #tarif-compare .popup-wrapper {
        width: 100%;
        padding: 0px 5px 12px 12px;
        top: 0;
        bottom: 0;
        border-radius: 0;
        max-height: 100%;
    }

    #tarif-compare .popup {
        padding-right: 2px;
    }

    #tarif-compare .popup-close {
        right: 16px;
        top: 7px;
    }

    .tarif-compare__title {
        margin-bottom: 16px;
    }

    .tarif-table__row--header .tarif-table__item:first-of-type {
        display: none
    }

    .tarif-compare__switch {
        top: 16px;
        right: 80px;
    }

    .tarif-table__row {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 8px 4px;
    }

    .tarif-table--body .tarif-table__row:first-of-type .tarif-table__item {
        border-radius: 8px;
    }

    .tarif-table__row:first-of-type .tarif-table__item {
        border-radius: 8px;
    }

    .tarif-table__row:last-of-type:not(.tarif-table__row--header) .tarif-table__item {
        border-radius: 8px;
    }

    .tarif-table__row--header.is--sticky .tarif-table__item {
        border-radius: 0;
    }

    .tarif-table__item {
        min-height: 36px;
        padding: 10px 0;
        display: flex;
        align-items: center;
        width: 19%;
        min-width: 1%;
        max-width: 100%;
        margin: 0;
        border: none;
        border-radius: 8px;
        height: auto;
    }

    .tarif-table--buttons .tarif-table__item:first-of-type {
        display: none;
    }

    .tarif-table--buttons .desktop {
        display: none;
    }

    .tarif-table--buttons .mobile {
        display: block;
    }

    .tarif-table__item-content {
        width: 15vw;
        max-width: max-content;
    }

    .tarif-table__row .tarif-table__item:first-of-type {
        width: 100%;
        background: #ffffff;
        max-width: 100%;
        height: 24px;
        padding-top: 0;
        padding-bottom: 0;
        margin-top: 16px;
        line-height: 1;
        min-height: 2px;
    }

    .tarif-table__item .text, .tarif-table__collapse .collapsed__content {
        margin-top: 4px;
    }
}

@media screen and (max-width: 640px) {
    .tarif-table__item--title {
        padding-top: 0;
        padding-bottom: 0;
        height: 36px;
        line-height: 1;
    }

    .tarif-compare__switch {
        position: relative;
        top: auto;
        right: auto;
        margin-bottom: 16px;
    }

    .tarif-table__item {
        padding: 8px 0;
    }
}