@font-face {
    font-family: "UTM God's Word";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('/assets/fonts/UTM-Gods-WordBold.woff2') format('woff2');
}

@font-face {
    font-family: "UTM God's Word";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/assets/fonts/UTM-Gods-WordR.woff2') format('woff2');
}

#main.freebet-ksports-landing {
    padding-top: 0;
    width: 100%;
    background: url('/assets/event/freebet-ksports/bg-landing-mb.avif') center top / cover no-repeat;
    padding-bottom: 74px;
}

@media screen and (min-width: 1200px) {
    #main.freebet-ksports-landing {
        background: url('/assets/event/freebet-ksports/bg-landing-pc.avif') center top / cover no-repeat;
        padding-bottom: 48px;
    }
}
.freebet-ksports-landing {
    --fbks-title: #eae0d3;
    --fbks-desc: #bec1c7;
    --fbks-text: #fbfdff;
    --fbks-cta-title: #f3e5bd;
    --fbks-ink: #172642;
    --fbks-panel: #f7ecd2;
    --fbks-title-font: "UTM God's Word", "UTMbebas", serif;
    --fbks-body-font: var(--font-family-base, Roboto, Arial, sans-serif);
    --fbks-amount-font: Mulish, Roboto, Arial, sans-serif;
}

@media screen and (min-width: 1200px) {
    .freebet-ksports-landing .container-event {
        margin-right: auto;
        margin-left: auto;
        width: 1150px;
    }
}

.freebet-ksports-banner {
    height: 192px;
    margin: 0 -15px;
    background: url('/assets/event/freebet-ksports/banner-landing-mb.avif?v=2') center top no-repeat;
    background-size: auto 100%;
}

.freebet-ksports-banner a {
    display: block;
    width: 100%;
    height: 100%;
    cursor: pointer;
}

@media screen and (min-width: 1200px) {
    .freebet-ksports-banner {
        height: auto;
        aspect-ratio: 3200 / 774;
        margin: 0;
        background: url('/assets/event/freebet-ksports/banner-landing-pc.avif?v=1') center top / cover no-repeat;
    }
}

.freebet-ksports-highlights {
    display: flex;
    align-items: center;
    gap: 24px;
    overflow: hidden;
    box-sizing: border-box;
    width: 100%;
    min-height: 106px;
    margin: 0 0 46px;
    padding: 16px 24px;
    border-radius: 20px;
    background-image: linear-gradient(to top, #031a1b, #062526 26.368%, #0d3a36);
    box-shadow: 0 4px 30px 0 rgba(7, 39, 39, 0.64);
}

@media screen and (min-width: 1200px) {
    .freebet-ksports-highlights {
        margin-top: -33px;
    }
}

.freebet-ksports-highlight {
    display: flex;
    flex: 1 0 0;
    align-items: center;
    gap: 16px;
    min-width: 0;
}

.freebet-ksports-highlight__icon {
    display: block;
    width: 74px;
    height: 74px;
    flex-shrink: 0;
    object-fit: cover;
}

.freebet-ksports-highlight__copy {
    display: flex;
    flex: 1 0 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    min-width: 0;
}

.freebet-ksports-highlight__title {
    margin: 0;
    width: 100%;
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    color: #fff;
    text-transform: uppercase;
    word-break: break-word;
}

.freebet-ksports-highlight__title-br {
    display: none;
}

.freebet-ksports-highlight__desc {
    margin: 0;
    width: 100%;
    font-family: var(--fbks-body-font);
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--fbks-desc);
    word-break: break-word;
}

.freebet-ksports-highlights__divider {
    flex-shrink: 0;
    align-self: stretch;
    width: 2px;
    background-image: linear-gradient(to bottom, rgba(6, 37, 38, 0), #238c75 52.404%, rgba(6, 37, 38, 0));
}

.freebet-ksports-countdown {
    display: flex;
    flex-direction: column;
    align-items: center;
    isolation: isolate;
    width: 100%;
    margin: -22px 0 24px;
}

.freebet-ksports-countdown__ribbon {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: -32px;
    width: 520px;
    height: 65px;
    overflow: hidden;
    background: url('/assets/event/freebet-ksports/countdown-ribbon-pc.avif') center top / cover no-repeat;
}

.freebet-ksports-countdown__title {
    position: relative;
    margin: 0;
    font-family: var(--fbks-title-font);
    font-size: 24px;
    font-weight: 400;
    line-height: normal;
    color: #f5e6c8;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-countdown__panel {
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100%;
    padding: 38px 47px 17px;
    overflow: hidden;
    border: 1px solid #2b6b5d;
    border-radius: 24px;
    background: linear-gradient(180deg, #118B87 -78.6%, #063236 100%);
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.15);
}

.freebet-ksports-countdown__start {
    margin: 0;
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--fbks-text);
    white-space: nowrap;
    margin-bottom: 12px;
}

.freebet-ksports-countdown__timer {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 16px;
}

.freebet-ksports-countdown__unit {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.freebet-ksports-countdown__value {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 87px;
    height: 50px;
    padding: 13px 17px;
    border: 1px solid #2b6b5d;
    border-radius: 12px;
    background-image: linear-gradient(to bottom, #062526, #0a3432);
    font-family: var(--fbks-body-font);
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
    color: #fff;
    text-shadow: 0 4px 4px rgba(1, 43, 0, 0.25);
}

.freebet-ksports-countdown__label {
    font-family: var(--fbks-body-font);
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: #fff;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
}

.freebet-ksports-steps {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

.freebet-ksports-steps__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    width: 100%;
}

.freebet-ksports-steps__heading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.freebet-ksports-steps__ornament {
    display: block;
    width: 74px;
    height: 74px;
    flex-shrink: 0;
    object-fit: cover;
}

.freebet-ksports-steps__ornament--left {
    transform: scaleX(-1);
}

.freebet-ksports-steps__title {
    margin: 0;
    font-family: var(--fbks-title-font);
    font-size: 42px;
    font-weight: 700;
    line-height: 40px;
    color: var(--fbks-title);
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-steps__desc {
    margin: 0;
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--fbks-text);
    text-align: center;
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-steps__body {
    display: flex;
    gap: 24px;
    align-items: flex-start;
    width: 100%;
}

.freebet-ksports-step {
    flex: 1 0 0;
    min-width: 0;
    height: 254px;
    position: relative;
}

.freebet-ksports-step__card {
    position: absolute;
    top: 49px;
    left: 0;
    right: 0;
    height: 205px;
    pointer-events: none;
}

.freebet-ksports-step__card picture {
    position: absolute;
    inset: -7.8% -7.49% -11.71% -7.49%;
    display: block;
}

.freebet-ksports-step__card-img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: fill;
}

.freebet-ksports-step__body {
    position: absolute;
    top: 49px;
    left: 0;
    right: 0;
    height: 205px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 42px 20px 20px;
    overflow: hidden;
    box-sizing: border-box;
    z-index: 1;
}

.freebet-ksports-step__heading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 100%;
    min-height: 25px;
    flex-shrink: 0;
}

.freebet-ksports-step__heading .freebet-ksports-step__title {
    width: auto;
    white-space: nowrap;
}

.freebet-ksports-step__title {
    margin: 0;
    width: 100%;
    font-family: var(--fbks-title-font);
    font-size: 18px;
    font-weight: 700;
    line-height: normal;
    color: var(--fbks-title);
    text-align: center;
    text-transform: uppercase;
    word-break: break-word;
}

.freebet-ksports-step__br {
    display: none;
}

.freebet-ksports-step__logo {
    display: block;
    width: 94px;
    height: 25px;
    flex-shrink: 0;
    object-fit: contain;
}

.freebet-ksports-step__desc {
    margin: 0;
    width: 100%;
    font-family: var(--fbks-body-font);
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--fbks-desc);
    text-align: center;
    word-break: break-word;
}

.freebet-ksports-step__highlight {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: auto;
    padding: 12px;
    box-sizing: border-box;
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.00) 100%);


    flex-shrink: 0;
}

.freebet-ksports-step__highlight p {
    margin: 0;
    font-family: var(--fbks-body-font);
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    color: var(--fbks-text);
    text-align: center;
    white-space: nowrap;
}

.freebet-ksports-step__badge {
    position: absolute;
    top: 7px;
    left: 50%;
    width: 81.266px;
    height: 84px;
    transform: translateX(-50%);
    z-index: 2;
    pointer-events: none;
}

.freebet-ksports-step__no {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.freebet-ksports-cta {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    overflow: hidden;
    box-sizing: border-box;
    min-height: 120px;
    margin-top: 32px;
    padding: 24px 24px 24px 196px;
    border: 1px solid #2b6b5d;
    border-radius: 24px;
}

.freebet-ksports-cta__bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    overflow: hidden;
}

.freebet-ksports-cta__bg-art {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
}

.freebet-ksports-cta__copy {
    flex: 1 0 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
    position: relative;
    z-index: 1;
}

.freebet-ksports-cta__title {
    margin: 0;
    font-family: var(--fbks-title-font);
    font-size: 32px;
    font-weight: 700;
    line-height: 40px;
    color: var(--fbks-cta-title);
    text-transform: uppercase;
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-cta__comma,
.freebet-ksports-cta__br {
    display: none;
}

.freebet-ksports-cta__desc {
    margin: 0;
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #fff;
    word-break: break-word;
}

.freebet-ksports-cta__btn {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-shrink: 0;
    padding: 12px 16px;
    border-radius: 12px;
    text-decoration: none;
    color: #363147;
    box-shadow: 0 0 5.2px 0 rgba(250, 224, 169, 0.49);
    background-image: linear-gradient(182.19deg, #fffffA 15.323%, #ffe7ac 50.111%, #ffb739 92.302%);
}

.freebet-ksports-cta__btn-text {
    font-family: var(--fbks-title-font);
    font-size: 16px;
    font-weight: 700;
    line-height: normal;
    color: #363147;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-cta__arrow {
    display: block;
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    object-fit: contain;
}

.freebet-ksports-vip {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 70px;
}

.freebet-ksports-vip__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.freebet-ksports-vip__heading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.freebet-ksports-vip__ornament {
    display: block;
    width: 74px;
    height: 74px;
    flex-shrink: 0;
    object-fit: cover;
}

.freebet-ksports-vip__ornament--left {
    transform: scaleX(-1);
}

.freebet-ksports-vip__title {
    margin: 0;
    font-family: var(--fbks-title-font);
    font-size: 42px;
    font-weight: 700;
    line-height: 40px;
    color: var(--fbks-title);
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-vip__title-br {
    display: none;
}

.freebet-ksports-vip__desc {
    margin: 0;
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--fbks-text);
    text-align: center;
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-vip__body {
    display: flex;
    gap: 24px;
    align-items: stretch;
}

.freebet-ksports-tier {
    position: relative;
    flex: 1 0 0;
    min-width: 0;
    height: 301px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 24px;
    box-sizing: border-box;
    border: 1px solid #2b6b5d;
    border-radius: 24px;
}

.freebet-ksports-tier__bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    overflow: hidden;
}

.freebet-ksports-tier__bg-fill {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, #397e7b 78.596%, #0d2b2e);
}

.freebet-ksports-tier__bg-art {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    opacity: 0.62;
    border-radius: inherit;
}

.freebet-ksports-tier__panel {
    position: relative;
    z-index: 1;
    flex: 1 0 0;
    width: 100%;
    min-height: 0;
}

.freebet-ksports-tier__panel-bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    isolation: isolate;
    -webkit-mask-image: url('/assets/event/freebet-ksports/tier-panel.svg');
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-image: url('/assets/event/freebet-ksports/tier-panel.svg');
    mask-repeat: no-repeat;
    mask-size: 100% 100%;
}

.freebet-ksports-tier__panel-fill {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
}

.freebet-ksports-tier__panel-fill--mb {
    display: none;
}

.freebet-ksports-tier__cloud {
    position: absolute;
    object-fit: cover;
    max-width: none;
    mix-blend-mode: luminosity;
}

.freebet-ksports-tier__cloud--1 {
    left: 61.25%;
    top: 34.2%;
    width: 250px;
    height: 250px;
    opacity: 0.35;
}

.freebet-ksports-tier__cloud--2 {
    left: -16.2%;
    top: -39.1%;
    width: 263px;
    height: 263px;
    opacity: 0.38;
}

.freebet-ksports-tier__body {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
    height: 100%;
    padding: 24px;
    box-sizing: border-box;
}

.freebet-ksports-vip.is-started .freebet-ksports-tier__body {
    gap: 7px;
}

.freebet-ksports-tier__level {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 173px;
    height: 40px;
    flex-shrink: 0;
}

.freebet-ksports-tier__level-art {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.freebet-ksports-tier__level-art img {
    position: absolute;
    left: -5.65%;
    top: -80.79%;
    width: 110.92%;
    height: 269.99%;
    max-width: none;
}

.freebet-ksports-tier__level-text {
    position: relative;
    font-family: var(--fbks-body-font);
    font-size: 20px;
    font-weight: 900;
    line-height: normal;
    letter-spacing: 0.4px;
    color: #e8d7b0;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
}

.freebet-ksports-tier__info {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    width: 100%;
}

.freebet-ksports-tier__offer {
    margin: 0;
    width: 100%;
    font-family: var(--fbks-body-font);
    font-size: 18px;
    font-weight: 600;
    line-height: 28px;
    color: var(--fbks-ink);
    text-transform: uppercase;
    word-break: break-word;
}

.freebet-ksports-tier__reward {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.freebet-ksports-vip.is-started .freebet-ksports-tier__reward {
    gap: 18px;
}

.freebet-ksports-tier__amount {
    margin: 0;
    width: 100%;
    font-family: var(--fbks-amount-font);
    font-size: 46px;
    font-weight: 900;
    line-height: 48px;
    text-transform: uppercase;
    background-image: linear-gradient(to bottom, #196857 18.75%, #0d3a36 93.755%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
    word-break: break-word;
}

.freebet-ksports-tier__pending {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
}

.freebet-ksports-tier__pending-total {
    margin: 0;
    flex: 1 0 0;
    min-width: 0;
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--fbks-ink);
    word-break: break-word;
}

.freebet-ksports-tier__pending-total strong {
    font-weight: 700;
}

.freebet-ksports-tier__pending-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 4px 12px;
    border-radius: 20px;
    background: #e85a4f;
    font-family: var(--fbks-body-font);
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    color: #fff;
    white-space: nowrap;
}

.freebet-ksports-tier__issued {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
}

.freebet-ksports-tier__issued-label,
.freebet-ksports-tier__issued-total {
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--fbks-ink);
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-tier__issued-data {
    position: relative;
    display: flex;
    flex: 1 0 0;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.freebet-ksports-tier__bar {
    position: relative;
    flex: 1 0 0;
    min-width: 0;
    height: 6px;
}

.freebet-ksports-tier__bar-track {
    display: block;
    height: 6px;
    overflow: hidden;
    border-radius: 62px;
    background: #0e0000;
}

.freebet-ksports-tier__bar-fill {
    display: block;
    height: 6px;
    border-radius: 62px;
    background-image: linear-gradient(to right, #2b6b5d, #63c2a1);
}

.freebet-ksports-tier__marker {
    position: absolute;
    left: var(--issued-pct, 0%);
    top: -25px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transform: translateX(-50%);
    pointer-events: none;
    z-index: 2;
}

.freebet-ksports-tier__marker-count {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 26px;
    margin-bottom: -1px;
    border-radius: 32px;
    background: #1e8c72;
    font-family: var(--fbks-amount-font);
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
    color: #fff;
    text-align: center;
    padding: 0 3px;
}

.freebet-ksports-tier__marker-arrow {
    display: block;
    width: 6px;
    height: 6px;
    flex-shrink: 0;
}

.freebet-ksports-tier__cond {
    display: flex;
    align-items: center;
    gap: 4px;
    width: 100%;
}

.freebet-ksports-tier__cond-badge {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 121px;
    height: 28px;
    flex-shrink: 0;
}

.freebet-ksports-tier__cond-art {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.freebet-ksports-tier__cond-art img {
    position: absolute;
    left: -5.42%;
    top: -82.14%;
    width: 111%;
    height: 269.97%;
    max-width: none;
}

.freebet-ksports-tier__cond-label {
    position: relative;
    font-family: var(--fbks-body-font);
    font-size: 14px;
    font-weight: 900;
    line-height: normal;
    letter-spacing: 0.28px;
    color: #e8d7b0;
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
}

.freebet-ksports-tier__cond-text {
    margin: 0;
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    color: var(--fbks-ink);
    text-align: center;
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-tier__emblem {
    position: absolute;
    top: -25px;
    right: -25px;
    width: 138px;
    height: 110px;
    object-fit: cover;
    pointer-events: none;
    z-index: 2;
}

.freebet-ksports-tier__crown {
    position: absolute;
    left: 7px;
    top: 0;
    width: 253px;
    height: 84px;
    z-index: 3;
    pointer-events: none;
}

.freebet-ksports-tier__crown-img {
    position: absolute;
    inset: 0;
    width: 253px;
    height: 84px;
    object-fit: cover;
}

.freebet-ksports-tier__crown-text {
    position: absolute;
    left: 38px;
    top: 21px;
    width: 179px;
    height: 20px;
}

.freebet-ksports-tier__crown-text--mb {
    display: none;
}

.freebet-ksports-terms {
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 70px;
}

.freebet-ksports-terms__header {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.freebet-ksports-terms__heading {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.freebet-ksports-terms__ornament {
    display: block;
    width: 74px;
    height: 74px;
    flex-shrink: 0;
    object-fit: cover;
}

.freebet-ksports-terms__ornament--left {
    transform: scaleX(-1);
}

.freebet-ksports-terms__title {
    margin: 0;
    font-family: var(--fbks-title-font);
    font-size: 42px;
    font-weight: 700;
    line-height: 40px;
    color: var(--fbks-title);
    text-align: center;
    text-transform: uppercase;
    white-space: nowrap;
    word-break: break-word;
}

.freebet-ksports-terms__panel {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    box-sizing: border-box;
    padding: 24px 0;
    border: 1px solid #2b6b5d;
    border-radius: 24px;
    background: linear-gradient(to bottom, #062526, #0a3432);
}

.freebet-ksports-terms__body {
    position: relative;
    height: 352px;
}

.freebet-ksports-terms__hero {
    position: absolute;
    left: 0;
    top: -62px;
    width: 448px;
    height: 437px;
    object-fit: cover;
    pointer-events: none;
}

.freebet-ksports-terms__scroll {
    position: relative;
    z-index: 1;
    height: 352px;
    overflow-x: hidden;
    overflow-y: auto;
    padding-right: 24px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.freebet-ksports-terms__list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 678px;
    max-width: 100%;
}

.freebet-ksports-terms__item {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.freebet-ksports-terms__item-head {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
}

.freebet-ksports-terms__item-head::before {
    content: "";
    position: absolute;
    left: 16px;
    top: 0;
    width: 120px;
    height: 32px;
    background: linear-gradient(to right, #1f5c5c, rgba(17, 139, 135, 0));
    pointer-events: none;
}

.freebet-ksports-terms__num {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    box-sizing: border-box;
    background-image: url('/assets/event/freebet-ksports/terms-number.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 32px 32px;
    font-family: var(--fbks-title-font);
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
    padding-bottom: 6px;
    color: #f5e6c8;
    text-align: center;
}

.freebet-ksports-terms__item-title {
    position: relative;
    z-index: 1;
    flex: 1 0 0;
    min-width: 0;
    margin: 0;
    font-family: var(--fbks-body-font);
    font-size: 18px;
    font-weight: 600;
    line-height: 27px;
    color: #e8d7b0;
}

.freebet-ksports-terms__item-desc {
    margin: 0;
    padding-left: 40px;
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--fbks-desc);
}

.freebet-ksports-terms__bullets {
    margin: 0;
    padding-left: 64px;
    font-family: var(--fbks-body-font);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--fbks-desc);
}

.freebet-ksports-terms__bullets li + li {
    margin-top: 0;
}

.freebet-ksports-terms__bullets ul {
    margin: 0;
    padding-left: 24px;
    list-style: disc;
}

@media screen and (max-width: 1199px) {
    .freebet-ksports-countdown {
        margin: 0 0 32px;
    }

    .freebet-ksports-countdown__ribbon {
        margin-bottom: -20px;
        width: 288px;
        height: 40px;
        background: url('/assets/event/freebet-ksports/countdown-ribbon-mb.avif') center top / cover no-repeat;
    }

    .freebet-ksports-countdown__title {
        font-size: 18px;
    }

    .freebet-ksports-countdown__panel {
        padding: 20px 13px 13px;
        border-radius: 16px;
    }

    .freebet-ksports-countdown__start {
        font-size: 12px;
        line-height: 18px;
        white-space: normal;
        text-align: center;
        margin-bottom: 8px;
    }

    .freebet-ksports-countdown__timer {
        justify-content: stretch;
        gap: 12px;
        width: 100%;
    }

    .freebet-ksports-countdown__unit {
        flex: 1 0 0;
        flex-direction: column;
        gap: 4px;
        min-width: 0;
    }

    .freebet-ksports-countdown__value {
        width: 100%;
        height: 38px;
        padding: 13px 17px;
        border-radius: 8px;
        font-size: 16px;
        line-height: 24px;
    }

    .freebet-ksports-countdown__label {
        font-size: 12px;
        line-height: 18px;
    }

    .freebet-ksports-highlights {
        gap: 12px;
        width: calc(100% + 32px);
        min-height: 172px;
        margin: 0 -16px 24px;
        padding: 12px;
        border-radius: 0;
        background-image: linear-gradient(to top, #031a1b, #062526 26.368%, #072727);
        box-shadow: none;
    }

    .freebet-ksports-highlight {
        flex-direction: column;
        align-self: stretch;
        gap: 8px;
    }

    .freebet-ksports-highlight__icon {
        width: 54px;
        height: 54px;
    }

    .freebet-ksports-highlight__copy {
        flex: none;
        width: 100%;
        gap: 4px;
        text-align: center;
    }

    .freebet-ksports-highlight__title {
        min-height: 28px;
        font-size: 12px;
        line-height: normal;
    }

    .freebet-ksports-highlight__title-space {
        display: none;
    }

    .freebet-ksports-highlight__title-br {
        display: block;
    }

    .freebet-ksports-highlight__desc {
        font-size: 12px;
        line-height: 18px;
    }

    .freebet-ksports-steps {
        gap: 16px;
    }

    .freebet-ksports-steps__ornament {
        width: 40px;
        height: 40px;
    }

    .freebet-ksports-steps__title {
        font-size: 18px;
        line-height: normal;
    }

    .freebet-ksports-steps__desc {
        font-size: 12px;
        line-height: 18px;
        white-space: normal;
    }

    .freebet-ksports-steps__body {
        flex-wrap: wrap;
        gap: 16px 12px;
    }

    .freebet-ksports-step {
        flex: 0 0 calc(50% - 6px);
        max-width: none;
        height: 200px;
    }

    .freebet-ksports-step__card,
    .freebet-ksports-step__body {
        top: 27px;
        height: 173px;
    }

    .freebet-ksports-step__card picture {
        inset: -5.78% -6.22% -8.09% -6.22%;
    }

    .freebet-ksports-step__body {
        gap: 8px;
        padding: 28px 12px 12px;
    }

    .freebet-ksports-step__heading {
        flex-direction: column;
        min-height: 0;
    }

    .freebet-ksports-step__heading .freebet-ksports-step__title {
        width: 100%;
    }

    .freebet-ksports-step__title {
        font-size: 14px;
    }

    .freebet-ksports-step__br {
        display: block;
    }

    .freebet-ksports-step__logo {
        width: 90px;
        height: 24px;
    }

    .freebet-ksports-step__desc {
        font-size: 12px;
        line-height: 18px;
    }

    .freebet-ksports-step__highlight {
        padding: 8px 12px;
    }

    .freebet-ksports-step__highlight p {
        font-size: 12px;
        font-weight: 600;
        line-height: 18px;
    }

    .freebet-ksports-step__badge {
        top: 0;
        left: 35.23%;
        width: 29.08%;
        height: auto;
        aspect-ratio: 56.112 / 58;
        transform: none;
    }

    .freebet-ksports-cta {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-height: 162px;
        margin-top: 32px;
        padding: 16px 24px;
        border-radius: 16px;
    }

    .freebet-ksports-cta__copy {
        flex: 0 0 auto;
        width: 100%;
        max-width: 294px;
        align-items: center;
        text-align: center;
    }

    .freebet-ksports-cta__title {
        width: 100%;
        font-size: 18px;
        line-height: normal;
        text-align: center;
        white-space: normal;
    }

    .freebet-ksports-cta__dash {
        display: none;
    }

    .freebet-ksports-cta__comma {
        display: inline;
    }

    .freebet-ksports-cta__br {
        display: block;
    }

    .freebet-ksports-cta__desc {
        width: 100%;
        font-size: 12px;
        line-height: 18px;
        text-align: center;
    }

    .freebet-ksports-cta__btn {
        gap: 0;
        padding: 8px 12px;
        box-shadow: 0 0 5.8px 0 rgba(250, 224, 169, 0.49);
        background-image: linear-gradient(182.24deg, #fffffA 15.323%, #ffe7ac 50.111%, #ffcd76 92.302%);
    }

    .freebet-ksports-cta__btn-text {
        font-size: 12px;
        color: #111d32;
    }

    .freebet-ksports-cta__arrow {
        display: none;
    }

    .freebet-ksports-vip {
        gap: 16px;
        margin-top: 32px;
    }

    .freebet-ksports-vip__ornament {
        width: 40px;
        height: 40px;
    }

    .freebet-ksports-vip__title {
        font-size: 18px;
        line-height: normal;
        white-space: normal;
    }

    .freebet-ksports-vip__title-space {
        display: none;
    }

    .freebet-ksports-vip__title-br {
        display: block;
    }

    .freebet-ksports-vip__desc {
        font-size: 12px;
        line-height: 18px;
        white-space: normal;
    }

    .freebet-ksports-vip__body {
        flex-direction: column;
        gap: 16px;
        width: 100%;
    }

    .freebet-ksports-tier {
        flex: none;
        width: 100%;
        max-width: 100%;
        height: 215px;
        padding: 11px 8px;
        border-radius: 16px;
    }

    .freebet-ksports-tier__panel-bg {
        -webkit-mask-image: url('/assets/event/freebet-ksports/tier-panel-mb.svg');
        mask-image: url('/assets/event/freebet-ksports/tier-panel-mb.svg');
    }

    .freebet-ksports-tier__panel-fill--pc {
        display: none;
    }

    .freebet-ksports-tier__panel-fill--mb {
        display: block;
    }

    .freebet-ksports-tier__cloud--1 {
        left: 59.4%;
        top: 38.6%;
        width: 175px;
        height: 175px;
    }

    .freebet-ksports-tier__cloud--2 {
        left: -15.93%;
        top: -34.44%;
        width: 185px;
        height: 185px;
    }

    .freebet-ksports-tier__body {
        gap: 8px;
        padding: 16px;
    }

    .freebet-ksports-vip.is-started .freebet-ksports-tier__body {
        gap: 8px;
    }

    .freebet-ksports-tier__level {
        width: 123px;
        height: 28px;
    }

    .freebet-ksports-tier__level-art img {
        left: -4.99%;
        top: -82.64%;
        width: 109.79%;
        height: 271.43%;
    }

    .freebet-ksports-tier__level-text {
        font-size: 16px;
        letter-spacing: 0.32px;
    }

    .freebet-ksports-tier__offer {
        font-size: 16px;
        font-weight: 700;
        line-height: normal;
    }

    .freebet-ksports-tier__reward {
        height: 72px;
        justify-content: space-between;
        gap: 0;
    }

    .freebet-ksports-vip.is-started .freebet-ksports-tier__reward {
        gap: 0;
    }

    .freebet-ksports-tier__amount {
        font-size: 32px;
        line-height: normal;
    }

    .freebet-ksports-tier__pending {
        justify-content: center;
    }

    .freebet-ksports-tier__pending-total {
        font-size: 12px;
        line-height: 18px;
    }

    .freebet-ksports-tier__pending-badge {
        font-size: 12px;
        line-height: 18px;
    }

    .freebet-ksports-tier__issued-label {
        font-size: 12px;
        line-height: 18px;
    }

    .freebet-ksports-tier__issued-total {
        font-size: 12px;
        font-weight: 600;
        line-height: 18px;
    }

    .freebet-ksports-tier__marker {
        top: -23px;
    }

    .freebet-ksports-tier__marker-count {
        min-width: 24px;
        height: 24px;
        font-size: 12px;
        font-weight: 800;
        line-height: 16px;
        text-transform: uppercase;
    }

    .freebet-ksports-tier__cond-badge {
        width: 96px;
        height: 22px;
    }

    .freebet-ksports-tier__cond-art img {
        left: -5.32%;
        top: -80%;
        width: 110.63%;
        height: 264%;
    }

    .freebet-ksports-tier__cond-label {
        font-size: 10px;
        letter-spacing: 0.2px;
    }

    .freebet-ksports-tier__cond-text {
        font-size: 12px;
        font-weight: 600;
        line-height: 18px;
        white-space: normal;
        text-align: left;
        flex: 1 1 auto;
        min-width: 0;
    }

    .freebet-ksports-tier__emblem {
        top: -18px;
        right: -8px;
        width: 93px;
        height: 74px;
    }

    .freebet-ksports-tier__crown {
        left: 0;
        top: -1px;
        width: 171px;
        height: 57px;
    }

    .freebet-ksports-tier__crown-img {
        width: 171px;
        height: 57px;
    }

    .freebet-ksports-tier__crown-text--pc {
        display: none;
    }

    .freebet-ksports-tier__crown-text--mb {
        display: block;
        left: 26px;
        top: 15px;
        width: 121px;
        height: 13px;
    }

    .freebet-ksports-terms {
        gap: 16px;
        margin-top: 32px;
    }

    .freebet-ksports-terms__ornament {
        width: 40px;
        height: 40px;
    }

    .freebet-ksports-terms__title {
        font-size: 18px;
        line-height: normal;
        white-space: normal;
    }

    .freebet-ksports-terms__panel {
        padding: 12px 8px;
        border-radius: 16px;
    }

    .freebet-ksports-terms__hero {
        display: none;
    }

    .freebet-ksports-terms__scroll {
        padding-right: 8px;
        align-items: stretch;
    }

    .freebet-ksports-terms__list {
        width: 100%;
    }

    .freebet-ksports-terms__item-head {
        gap: 4px;
        height: 26px;
    }

    .freebet-ksports-terms__item-head::before {
        left: 13px;
        height: 26px;
    }

    .freebet-ksports-terms__num {
        width: 26px;
        height: 26px;
        background-size: 26px 26px;
        font-size: 14px;
    }

    .freebet-ksports-terms__item-title {
        font-size: 14px;
        line-height: 20px;
    }

    .freebet-ksports-terms__item-desc {
        padding-left: 16px;
        font-size: 12px;
        line-height: 18px;
    }

    .freebet-ksports-terms__bullets {
        padding-left: 34px;
        font-size: 12px;
        line-height: 18px;
    }

    .freebet-ksports-terms__bullets ul {
        padding-left: 18px;
    }
}

@media screen and (max-width: 410px) {
    .freebet-ksports-tier__offer {
        font-size: 14px;
    }

    .freebet-ksports-tier__cond-text {
        font-size: 10px;
    }

    .freebet-ksports-step__body {
        gap: 3px;
    }

    .freebet-ksports-step__highlight {
        margin-top: 0;
    }
}