@media(min-width:992px){
    .tf-section__slot:has(.tf-product-info-wrap.is-sticky){ overflow: visible !important; }
    .tf-section--slot-embedded:has(.tf-product-info-wrap.is-sticky){ overflow: visible !important; }
    .tf-main-product__info:has(.tf-product-info-wrap.is-sticky){ position: sticky; top: 24px; align-self: flex-start; height: max-content; }
}
:is(html, body)[data-device="desktop"] .tf-section__slot:has(.tf-product-info-wrap.is-sticky){ overflow: visible !important; }
:is(html, body)[data-device="desktop"] .tf-section--slot-embedded:has(.tf-product-info-wrap.is-sticky){ overflow: visible !important; }
:is(html, body)[data-device="desktop"] .tf-main-product__info:has(.tf-product-info-wrap.is-sticky){ position: sticky; top: 24px; align-self: flex-start; height: max-content; }

.tf-bundle-cd {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-weight: 600;
    font-variant-numeric: tabular-nums
}

.tf-bundle-cd b {
    font-weight: 700
}

.tf-bundle-cd i {
    font-style: normal;
    opacity: .5
}

.tf-product-bundle-save .wg-quantity .btn-quantity {
    cursor: pointer
}

.tf-product-bundle-save {
    margin-bottom: 36px;
    padding-bottom: 28px;
    border-bottom: 1px solid rgba(0, 0, 0, .08);
}

.tf-flash {
    margin: 14px 0;
    border-radius: 14px;
    font-family: inherit
}

.tf-flash__info {
    min-width: 0
}

.tf-flash__titlerow {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap
}

.tf-flash__spark {
    flex: 0 0 auto;
    display: inline-flex;
    font-size: 1rem
}

.tf-flash__title {
    font-weight: 700
}

.tf-flash__sub {
    display: none;
    color: #6b7280;
    font-size: .82rem;
    margin-top: 3px
}

.tf-flash__badge {
    display: none;
    white-space: nowrap
}

.tf-flash__timer {
    display: flex;
    align-items: center;
    gap: 6px;
    font-variant-numeric: tabular-nums
}

.tf-flash__seg {
    display: flex;
    flex-direction: column;
    align-items: center
}

.tf-flash__seg b {
    font-weight: 700;
    line-height: 1
}

.tf-flash__seg i {
    font-style: normal;
    font-size: .6rem;
    text-transform: uppercase;
    letter-spacing: .04em;
    opacity: .65;
    margin-top: 4px
}

.tf-flash__sep {
    font-weight: 700;
    opacity: .4
}

.tf-flash--minimal,
.tf-flash--soft,
.tf-flash--bar,
.tf-flash--elegant {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap
}

.tf-flash--minimal {
    background: #f4f5f7;
    padding: 18px 28px
}

.tf-flash--minimal .tf-flash__spark {
    display: none
}

.tf-flash--minimal .tf-flash__title {
    color: #111827;
    font-size: 1.02rem
}

.tf-flash--minimal .tf-flash__sub {
    display: block
}

.tf-flash--minimal .tf-flash__seg i {
    display: none
}

.tf-flash--minimal .tf-flash__seg b {
    font-size: 1.5rem;
    color: #059669
}

.tf-flash--minimal .tf-flash__sep {
    color: #059669;
    font-size: 1.25rem;
    opacity: .55
}

.tf-flash--soft {
    background: #fff1f2;
    border: 1px solid #fecdd3;
    padding: 16px 26px
}

.tf-flash--soft .tf-flash__spark {
    color: #f97316
}

.tf-flash--soft .tf-flash__title {
    color: #9f1239;
    font-size: 1rem
}

.tf-flash--soft .tf-flash__badge {
    display: inline-flex;
    background: #e11d48;
    color: #fff;
    font-size: .7rem;
    font-weight: 600;
    padding: 2px 9px;
    border-radius: 999px
}

.tf-flash--soft .tf-flash__seg i {
    display: none
}

.tf-flash--soft .tf-flash__seg b {
    font-size: 1.4rem;
    color: #9f1239
}

.tf-flash--soft .tf-flash__sep {
    color: #9f1239;
    opacity: .4;
    font-size: 1.15rem
}

.tf-flash--boxes {
    background: #fff;
    border: 1px solid #ececec;
    padding: 16px 24px
}

.tf-flash--boxes .tf-flash__titlerow {
    margin-bottom: 12px
}

.tf-flash--boxes .tf-flash__spark {
    color: #e11d48
}

.tf-flash--boxes .tf-flash__title {
    color: #111827;
    font-size: 1rem
}

.tf-flash--boxes .tf-flash__badge {
    display: inline-flex;
    margin-left: auto;
    background: #e11d48;
    color: #fff;
    font-size: .72rem;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 999px
}

.tf-flash--boxes .tf-flash__seg {
    min-width: 56px;
    background: #14110e;
    color: #fff;
    border-radius: 10px;
    padding: 9px 6px 7px
}

.tf-flash--boxes .tf-flash__seg b {
    font-size: 1.4rem
}

.tf-flash--boxes .tf-flash__seg i {
    opacity: .7
}

.tf-flash--boxes .tf-flash__sep {
    color: #14110e;
    opacity: .3;
    font-size: 1.2rem;
    margin-top: -14px
}

.tf-flash--bar {
    background: #14110e;
    padding: 14px 26px
}

.tf-flash--bar .tf-flash__spark {
    color: #fbbf24
}

.tf-flash--bar .tf-flash__title {
    color: #fff;
    font-size: .95rem
}

.tf-flash--bar .tf-flash__badge {
    display: inline-flex;
    background: #e11d48;
    color: #fff;
    font-size: .7rem;
    font-weight: 600;
    padding: 2px 9px;
    border-radius: 999px
}

.tf-flash--bar .tf-flash__seg i {
    display: none
}

.tf-flash--bar .tf-flash__seg b {
    font-size: 1.35rem;
    color: #fbbf24
}

.tf-flash--bar .tf-flash__sep {
    color: #fbbf24;
    opacity: .5
}

.tf-flash--elegant {
    background: #fff;
    border: 1px solid #eee;
    border-left: 3px solid #e11d48;
    padding: 16px 26px
}

.tf-flash--elegant .tf-flash__spark {
    color: #e11d48
}

.tf-flash--elegant .tf-flash__title {
    color: #111827;
    font-size: 1rem
}

.tf-flash--elegant .tf-flash__sub {
    display: block
}

.tf-flash--elegant .tf-flash__seg {
    min-width: 46px;
    background: #f9fafb;
    border: 1px solid #eef0f2;
    border-radius: 8px;
    padding: 6px 4px
}

.tf-flash--elegant .tf-flash__seg b {
    font-size: 1.2rem;
    color: #111827
}

.tf-flash--elegant .tf-flash__seg i {
    opacity: .55
}

.tf-flash--elegant .tf-flash__sep {
    display: none
}

@media(max-width:600px) {

    .tf-flash--minimal,
    .tf-flash--soft,
    .tf-flash--bar,
    .tf-flash--elegant {
        padding-left: 20px;
        padding-right: 20px
    }

    .tf-flash--boxes {
        padding-left: 18px;
        padding-right: 18px
    }

    .tf-flash--minimal .tf-flash__seg b,
    .tf-flash--soft .tf-flash__seg b,
    .tf-flash--bar .tf-flash__seg b {
        font-size: 1.2rem
    }

    .tf-flash--boxes .tf-flash__seg {
        min-width: 46px;
        padding: 7px 4px 5px
    }

    .tf-flash--boxes .tf-flash__seg b {
        font-size: 1.15rem
    }

    .tf-flash--elegant .tf-flash__seg {
        min-width: 40px
    }
}

.tf-preorder {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    margin: 0 0 12px;
    padding: 10px 14px;
    background: #eef4ff;
    border: 1px solid #d6e2fb;
    border-radius: 10px;
    font-size: .85rem;
    color: #1e3a8a
}

.tf-preorder__badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #2563eb;
    color: #fff;
    font-weight: 600;
    font-size: .72rem;
    padding: 3px 9px;
    border-radius: 999px
}

.tf-preorder__eta b {
    font-weight: 700
}

.tf-preorder__note {
    color: #3b5bd0
}

.btn-action-price.is-preorder {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px
}

.tf-snotify__form {
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 8px
}

.tf-snotify__hint {
    font-size: .82rem;
    color: #6b7280;
    margin: 0 0 2px
}

.tf-snotify__input {
    width: 100%;
    border: 1px solid #e3e3e8;
    border-radius: 10px;
    padding: 11px 14px;
    font-size: .9rem;
    font-family: inherit;
    background: #fff
}

.tf-snotify__input:focus {
    outline: none;
    border-color: #14110e
}

.tf-snotify__msg {
    font-size: .85rem;
    padding: 8px 12px;
    border-radius: 8px
}

.tf-snotify__msg.is-ok {
    background: #ecfdf3;
    color: #067647
}

.tf-snotify__msg.is-err {
    background: #fef3f2;
    color: #b42318
}

.btn-action-price.is-notify {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px
}
