@font-face {
    font-family: Outfit;
    src: url('/assets/fonts/outfit.ttf') format('truetype');
    font-display: swap;
    font-weight: 100 900
}

* {
    box-sizing: border-box
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 30px
}

body {
    margin: 0;
    background: #1C1F26;
    color: #f7f4ed;
    font-family: Outfit,'Segoe UI',sans-serif;
    font-weight: 400;
    --accent: #FF4561;
    --accent-rgb: 254,23,57;
    --accent-dark: #FFFFFF;
    --soft: #AAB2C2;
    --line: rgba(220,226,240,.12);
    --panel: #20232A;
    --hero: url('/assets/casinova-hero-red.png')
}

html[data-brand=milosbet] body {
    --accent: #ED62BC;
    --accent-rgb: 198,0,127;
    --accent-dark: #FFFFFF;
    --soft: #b2a0b6;
    --line: rgba(222,166,225,.14);
    --panel: #191538;
    --hero: url('/assets/milosbet-hero.png');
    background: #131027
}

button,input,select,textarea {
    font: inherit
}

button,a,input,textarea,select {
    -webkit-tap-highlight-color: transparent
}

button,a {
    touch-action: manipulation
}

a {
    color: inherit;
    text-decoration: none
}

button {
    color: inherit;
    cursor: pointer
}

button:disabled {
    cursor: wait;
    opacity: .6
}

button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {
    outline: 2px solid var(--accent);
    outline-offset: 5px
}

input,textarea,select {
    min-width: 0
}

h1,h2,h3,p {
    margin: 0
}

h2 {
    font-size: clamp(29px,3vw,42px);
    font-weight: 500;
    letter-spacing: -1.2px;
    line-height: 1.2
}

h2 em {
    font-family: Georgia,serif;
    font-weight: 400;
    color: var(--accent)
}

.wrap {
    width: min(1180px,calc(100% - 96px));
    margin-inline:auto}

.icon {
    height: 20px;
    width: 20px;
    flex-shrink: 0;
    vertical-align: middle
}

.skip {
    position: absolute;
    top: -80px;
    left: 10px;
    z-index: 999;
    background: var(--accent);
    color: #111;
    padding: 15px
}

.skip:focus {
    top: 10px
}

.boot {
    display: grid;
    place-items: center;
    min-height: 80vh;
    color: var(--accent)
}

.announcement {
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
    font-size: 9px;
    letter-spacing: 2px;
    font-weight: 600;
    background: #291d26;
    color: var(--accent);
    position: relative;
    z-index: 3;
    border-bottom: 1px solid rgba(var(--accent-rgb),.12)
}

html[data-brand=milosbet] .announcement {
    background: #29132d
}

.announcement-year {
    color: #d5d8e2;
    border-left: 1px solid rgba(var(--accent-rgb),.25);
    padding-left: 25px
}

.tiny-star {
    font-size: 13px
}

.site-header {
    height: 98px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 3;
    border-bottom: 1px solid var(--line)
}

.wordmark {
    display: inline-flex;
    align-items: center;
    font-size: 34px;
    letter-spacing: -1.6px;
    font-weight: 800;
    line-height: 1;
    color: #fff
}

.wordmark>span:not(.brand-emblem):not(.brand-dot) {
    color: var(--accent)
}

.brand-emblem {
    display: grid;
    place-items: center;
    font-size: 25px;
    background: var(--accent);
    color: #16130d;
    border-radius: 9px 9px 9px 2px;
    width: 33px;
    height: 33px;
    margin-right: 9px;
    transform: skew(-8deg);
    font-style: italic
}

.brand-dot {
    font-size: 9px;
    align-self: flex-start;
    letter-spacing: 0;
    margin: 3px 0 0 3px;
    color: var(--accent)
}

.wordmark-milos {
    font-style: italic;
    letter-spacing: -2px
}

.site-header nav {
    display: flex;
    gap: 32px;
    font-size: 12px;
    color: #c7cdd8
}

.site-header nav a:hover,.text-link:hover {
    color: var(--accent)
}

.button {
    min-height: 51px;
    padding: 0 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    transition: background .2s,transform .2s;
    border: 1px solid transparent;
    white-space: nowrap
}

.button:hover {
    transform: translateY(-2px)
}

.button-small {
    min-height: 40px;
    font-size: 11px;
    padding: 0 18px;
    gap: 10px
}

.button-gold {
    background: linear-gradient(120deg,#ff4561,#e71034);
    color: #ffffff;
    box-shadow: 0 4px 28px rgba(var(--accent-rgb),.1)
}

html[data-brand=milosbet] .button-gold {
    background: linear-gradient(120deg,#ed62bc,#c6007f);
    color: #ffffff
}

.button-outline {
    background: transparent;
    border-color: rgba(var(--accent-rgb),.4);
    color: var(--accent)
}

.hero {
    height: 660px;
    position: relative;
    overflow: hidden;
    isolation: isolate
}

.hero-image {
    position: absolute;
    inset: -65px 0 -50px 0;
    background-image: var(--hero);
    background-size: cover;
    background-position: center 52%;
    z-index: -4
}

.hero-shadow {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg,#1c1f26 0%,rgba(28,31,38,.92) 19%,rgba(28,31,38,.34) 49%,rgba(28,31,38,0) 75%),linear-gradient(0deg,#1c1f26 1%,transparent 27%);
    z-index: -3
}

html[data-brand=milosbet] .hero-shadow {
    background: linear-gradient(90deg,#131027 0%,rgba(19,16,39,.9) 19%,rgba(19,16,39,.3) 49%,transparent 75%),linear-gradient(0deg,#131027 1%,transparent 27%)
}

.hero-content {
    padding-top: 47px;
    position: relative;
    z-index: 1
}

.eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;
    letter-spacing: 2.1px;
    font-size: 9px;
    color: var(--accent);
    font-weight: 600
}

.eyebrow>span {
    height: 5px;
    width: 5px;
    background: var(--accent);
    border-radius: 50%;
    box-shadow: 0 0 9px rgba(var(--accent-rgb),.5)
}

.hero-intro {
    font-size: 35px;
    margin-top: 23px;
    letter-spacing: -1.2px;
    font-weight: 400
}

.hero-intro em {
    font-family: Georgia,serif;
    font-weight: 400
}

.hero h1 {
    display: flex;
    flex-direction: column;
    color: var(--accent);
    margin-top: 1px;
    width: 430px
}

.hero-number {
    font-size: 176px;
    line-height: .98;
    font-weight: 700;
    letter-spacing: -10px;
    position: relative;
    align-self: flex-start;
    background: linear-gradient(140deg,#ff899b 0%,#fe1739 45%,#b90b28 99%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent
}

.hero-number-star {
    position: absolute;
    font-size: 32px;
    letter-spacing: 0;
    top: 13px;
    right: -43px;
    color: var(--accent);
    font-weight: 400
}

html[data-brand=milosbet] .hero-number {
    background: linear-gradient(140deg,#ffe8fa,#ed87c5 45%,#b63891);
    -webkit-background-clip: text;
    background-clip: text
}

.hero-million {
    font-size: 52px;
    line-height: 1.1;
    letter-spacing: 8px;
    font-weight: 500;
    margin-top: 0
}

.hero-million>span {
    font-size: 34px;
    letter-spacing: 0
}

.hero-prize-label {
    font-size: 10px;
    letter-spacing: 3.4px;
    color: #d9dce4;
    margin-top: 13px
}

.hero-description {
    color: #b8bdc9;
    font-size: 13px;
    line-height: 1.9;
    max-width: 355px;
    margin-top: 22px
}

.hero-actions {
    display: flex;
    align-items: center;
    gap: 28px;
    margin-top: 27px
}

.text-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    font-size: 12px;
    background: transparent;
    border: 0;
    padding: 0;
    min-height: 44px
}

.text-link>span {
    font-size: 19px;
    color: var(--accent)
}

.hero-footnote {
    font-size: 10px;
    color: #9098a8;
    display: flex;
    gap: 9px;
    align-items: center;
    margin-top: 23px
}

.hero-footnote .icon {
    height: 14px;
    width: 14px;
    color: var(--accent)
}

.hero-vertical {
    position: absolute;
    right: 24px;
    top: 160px;
    writing-mode: vertical-rl;
    color: #c1c7d3;
    font-size: 8px;
    letter-spacing: 3px;
    opacity: .6
}

.year-ghost {
    position: absolute;
    right: 6%;
    bottom: -62px;
    z-index: -1;
    font-size: 210px;
    letter-spacing: -12px;
    font-weight: 800;
    -webkit-text-stroke: 1px rgba(var(--accent-rgb),.1);
    color: transparent;
    line-height: 1
}

.countdown-section {
    padding: 28px 0 33px;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    display: flex;
    align-items: center;
    gap: 40px;
    position: relative
}

.label,.section-kicker {
    font-size: 9px;
    letter-spacing: 2.3px;
    font-weight: 500;
    color: var(--accent)
}

.countdown-heading h2 {
    font-size: 21px;
    letter-spacing: -.4px;
    margin: 9px 0 7px
}

.countdown-heading p {
    font-size: 10px;
    color: #9fa7b7
}

.countdown-heading p span {
    color: #747e90
}

.countdown {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-left: auto
}

.countdown>div {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 65px;
    gap: 6px
}

.countdown strong {
    font-size: 40px;
    font-weight: 400;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    letter-spacing: -2px
}

.countdown span {
    font-size: 8px;
    letter-spacing: 2px;
    color: #8994a7
}

.countdown>b {
    color: #79414d;
    font-size: 25px;
    align-self: flex-start;
    padding-top: 3px;
    font-weight: 300
}

.countdown-seal {
    border-left: 1px solid var(--line);
    padding-left: 30px;
    color: var(--accent);
    font-size: 9px;
    letter-spacing: 1.3px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
    white-space: nowrap
}

.countdown-seal .icon {
    width: 26px;
    height: 26px
}

.ticket-section {
    padding-top: 86px;
    text-align: center
}

.ticket-section h2,.prizes-section h2 {
    margin-top: 13px
}

.section-subtitle {
    color: var(--soft);
    font-size: 12px;
    line-height: 1.8;
    margin-top: 14px
}

.lookup-card {
    margin: 33px auto 0;
    max-width: 815px;
    background: linear-gradient(130deg,rgba(var(--accent-rgb),.045),rgba(var(--accent-rgb),.01));
    border: 1px solid rgba(var(--accent-rgb),.19);
    border-radius: 10px;
    padding: 29px 32px;
    text-align: left;
    position: relative
}

.lookup-top {
    display: flex;
    align-items: center;
    gap: 13px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--line)
}

.lookup-symbol {
    width: 40px;
    height: 40px;
    background: rgba(var(--accent-rgb),.08);
    border: 1px solid rgba(var(--accent-rgb),.14);
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: var(--accent)
}

.lookup-top h3 {
    font-size: 16px;
    font-weight: 500
}

.lookup-top p {
    color: var(--soft);
    font-size: 10px;
    margin-top: 6px
}

.secure-note {
    margin-left: auto;
    color: #9d978b;
    display: flex;
    gap: 5px;
    align-items: center;
    font-size: 9px
}

.secure-note .icon {
    width: 12px;
    height: 12px
}

#lookup-form {
    margin-top: 23px
}

#lookup-form label,.field-label {
    display: block;
    font-size: 10px;
    color: #c9ced8;
    margin-bottom: 10px
}

.lookup-input-row {
    display: flex;
    gap: 11px
}

.input-icon {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #171a21;
    border: 1px solid var(--line);
    border-radius: 5px;
    padding: 0 15px;
    flex: 1;
    color: #7e889b
}

.input-icon .icon {
    width: 17px
}

.input-icon input {
    background: transparent;
    border: 0;
    padding: 17px 0;
    width: 100%;
    font-size: 11px;
    color: #fff;
    outline-offset: 0
}

.input-icon:focus-within {
    border-color: var(--accent)
}

html[data-brand=milosbet] .input-icon {
    background: #160e1d
}

.form-note {
    font-size: 9px;
    color: #8c8579;
    margin-top: 13px;
    display: flex;
    gap: 6px;
    align-items: center;
    line-height: 1.6
}

.form-note .icon {
    height: 12px;
    width: 12px
}

.ticket-meta {
    display: flex;
    justify-content: center;
    gap: 32px;
    font-size: 9px;
    color: #a0a9b9;
    margin-top: 23px
}

.ticket-meta>span {
    display: flex;
    align-items: center;
    gap: 6px
}

.ticket-meta .icon {
    width: 13px;
    height: 13px;
    color: var(--accent)
}

.how-section {
    padding-top: 90px
}

.section-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-end
}

.section-heading h2 {
    margin-top: 13px;
    font-size: 33px
}

.section-heading>p {
    font-size: 11px;
    line-height: 1.8;
    color: var(--soft);
    text-align: right
}

.steps {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px;
    margin-top: 32px
}

.steps article {
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 29px 26px 25px;
    background: linear-gradient(150deg,rgba(var(--accent-rgb),.035),transparent);
    position: relative
}

.step-number {
    position: absolute;
    right: 24px;
    top: 23px;
    font-size: 37px;
    letter-spacing: -1px;
    color: rgba(var(--accent-rgb),.1);
    font-weight: 500
}

.step-icon {
    width: 39px;
    height: 39px;
    display: grid;
    place-items: center;
    color: var(--accent);
    border: 1px solid rgba(var(--accent-rgb),.18);
    border-radius: 8px;
    background: rgba(var(--accent-rgb),.055);
    margin-bottom: 23px
}

.steps h3 {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -.3px
}

.steps p {
    font-size: 11px;
    line-height: 1.95;
    color: var(--soft);
    margin-top: 11px;
    max-width: 270px
}

.steps p strong {
    color: #d0d7e3;
    font-weight: 500
}

.step-detail {
    border-top: 1px solid var(--line);
    padding-top: 17px;
    margin-top: 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 9px;
    font-weight: 500;
    letter-spacing: 1px;
    color: var(--accent)
}

.step-detail .icon {
    width: 16px;
    height: 16px
}

.example {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
    margin-top: 22px;
    padding: 18px;
    border-radius: 6px;
    background: rgba(var(--accent-rgb),.03);
    border: 1px dashed rgba(var(--accent-rgb),.15);
    font-size: 11px
}

.example>span {
    color: var(--accent);
    font-size: 10px;
    display: flex;
    align-items: center;
    gap: 8px
}

.example p {
    color: var(--soft)
}

.example p strong {
    color: #d9deea;
    font-weight: 400
}

.example b {
    font-weight: 500;
    color: var(--accent);
    display: flex;
    align-items: center;
    gap: 10px
}

.example .icon {
    width: 16px;
    height: 16px
}

.prizes-section {
    padding-top: 95px;
    text-align: center
}

.prize-podium {
    display: grid;
    grid-template-columns: 1fr 1.1fr 1fr;
    gap: 17px;
    align-items: end;
    margin-top: 58px;
    padding: 0 55px
}

.prize-card {
    height: 253px;
    border: 1px solid rgba(var(--accent-rgb),.15);
    border-radius: 10px;
    background: linear-gradient(145deg,rgba(var(--accent-rgb),.035),transparent);
    padding: 28px 16px 0;
    display: flex;
    align-items: center;
    flex-direction: column
}

.prize-tier {
    font-size: 9px;
    letter-spacing: 1.7px;
    color: #afb8c9
}

.podium-spark {
    font-size: 41px;
    color: var(--accent);
    line-height: 1;
    margin-top: 16px
}

.prize-card h3 {
    font-size: 29px;
    letter-spacing: -1.2px;
    font-weight: 500;
    white-space: nowrap;
    margin-top: 18px
}

.prize-card>p {
    font-size: 10px;
    color: var(--soft);
    margin-top: 8px
}

.prize-tag {
    border-top: 1px solid var(--line);
    font-size: 8px;
    letter-spacing: 1.2px;
    color: #a1abbd;
    display: block;
    width: 100%;
    margin-top: 23px;
    padding-top: 14px
}

.prize-card.first {
    position: relative;
    height: 287px;
    background: radial-gradient(ellipse at 50% 0,rgba(var(--accent-rgb),.14),rgba(var(--accent-rgb),.025));
    border-color: rgba(var(--accent-rgb),.55);
    padding-top: 36px;
    box-shadow: 0 0 45px rgba(var(--accent-rgb),.04)
}

.jackpot-ribbon {
    position: absolute;
    top: -15px;
    background: var(--accent);
    color: var(--accent-dark);
    height: 28px;
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 0 17px;
    font-size: 8px;
    letter-spacing: 1.4px;
    font-weight: 600;
    border-radius: 4px
}

.jackpot-ribbon .icon {
    height: 13px;
    width: 13px
}

.podium-crown {
    font-size: 46px;
    color: var(--accent);
    line-height: 1.2;
    margin-top: 16px
}

.prize-card.first h3 {
    font-size: 35px;
    color: var(--accent);
    margin-top: 15px
}

.prize-card.first .prize-tag {
    color: var(--accent)
}

.prizes-section>.text-link {
    margin-top: 28px;
    color: var(--accent);
    font-size: 11px
}

.prizes-section>.text-link .icon {
    height: 16px;
    width: 16px
}

.prize-explanation {
    font-size: 9px;
    color: #9099ab;
    max-width: 660px;
    line-height: 1.8;
    margin: 6px auto 0
}

.finale {
    margin-top: 84px;
    position: relative;
    min-height: 320px;
    overflow: hidden;
    background: linear-gradient(100deg,#29232d,#1b1e27);
    border: 1px solid rgba(var(--accent-rgb),.16);
    border-radius: 10px
}

html[data-brand=milosbet] .finale {
    background: linear-gradient(100deg,#301837,#1a1220)
}

.finale-inner {
    padding: 42px 55px;
    position: relative;
    z-index: 1
}

.finale h2 {
    font-size: 42px;
    line-height: 1.15;
    margin-top: 13px
}

.finale p {
    font-size: 11px;
    color: var(--soft);
    margin-top: 13px
}

.finale .button {
    margin-top: 24px;
    min-height: 44px;
    font-size: 11px
}

.finale-year {
    position: absolute;
    font-size: 140px;
    font-weight: 700;
    line-height: .79;
    right: 120px;
    top: 22px;
    letter-spacing: -10px;
    background: linear-gradient(140deg,rgba(var(--accent-rgb),.64),rgba(var(--accent-rgb),.035));
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    transform: rotate(-9deg)
}

.finale-year>span {
    position: absolute;
    top: 110px;
    right: -100px;
    font-size: 120px;
    color: var(--accent);
    font-weight: 200;
    opacity: .8
}

.rules-section {
    margin-top: 32px;
    border-block:1px solid var(--line)}

#rules-toggle {
    width: 100%;
    background: transparent;
    border: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 23px 0;
    font-size: 11px;
    color: #a6afbf
}

#rules-toggle>span {
    font-size: 20px;
    color: var(--accent)
}

#rules-content {
    padding-bottom: 24px;
    font-size: 11px;
    color: var(--soft);
    line-height: 1.9
}

#rules-content li {
    margin-bottom: 7px
}

#rules-content code {
    word-break: break-all;
    font-size: 10px
}

.site-footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 45px 0 80px;
    gap: 30px
}

.site-footer .wordmark {
    font-size: 27px
}

.site-footer .brand-emblem {
    width: 25px;
    height: 25px;
    font-size: 20px
}

.site-footer>div>p {
    font-size: 9px;
    color: #7f8aa0;
    margin-top: 13px
}

.footer-links {
    display: flex;
    flex-direction: column;
    gap: 13px;
    font-size: 10px;
    color: #9ca8bd
}

.footer-links button {
    background: transparent;
    border: 0;
    font-size: 10px;
    text-align: left;
    padding: 0;
    color: inherit;
    min-height: 22px
}

.footer-note {
    display: flex;
    gap: 12px;
    align-items: center
}

.footer-note p {
    font-size: 9px;
    line-height: 1.8;
    color: #8692a8
}

.age-badge {
    border: 1px solid #626e85;
    color: #aeb9ce;
    width: 29px;
    height: 29px;
    border-radius: 50%;
    font-size: 10px;
    display: grid;
    place-items: center
}

.atmosphere-controls {
    position: fixed;
    right: 22px;
    bottom: 22px;
    display: flex;
    align-items: center;
    padding: 6px;
    background: rgba(28,26,22,.92);
    border: 1px solid var(--line);
    border-radius: 8px;
    z-index: 5;
    backdrop-filter: blur(10px)
}

.atmosphere-controls button {
    border: 0;
    background: transparent;
    display: grid;
    place-items: center;
    width: 35px;
    height: 35px;
    color: var(--accent);
    border-radius: 4px
}

.atmosphere-controls button[aria-pressed=false] {
    color: #8994a7
}

.atmosphere-controls>span {
    height: 17px;
    border-left: 1px solid var(--line);
    margin: 0 3px
}

.atmosphere-controls .icon {
    height: 17px;
    width: 17px
}

#snow {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 4;
    opacity: .5
}

.info-dialog {
    background: var(--panel);
    color: #f5eee3;
    border: 1px solid rgba(var(--accent-rgb),.3);
    border-radius: 12px;
    padding: 40px;
    width: min(560px,calc(100% - 30px));
    max-height: 85vh
}

.info-dialog::backdrop {
    background: rgba(0,0,0,.78);
    backdrop-filter: blur(5px)
}

.dialog-close {
    position: absolute;
    top: 10px;
    right: 13px;
    border: 0;
    background: transparent;
    color: var(--soft);
    font-size: 28px;
    width: 36px;
    height: 36px
}

.info-dialog h2 {
    font-size: 30px;
    margin-top: 14px
}

.info-dialog p {
    font-size: 11px;
    color: var(--soft);
    line-height: 1.8;
    margin-top: 14px
}

.prize-table {
    margin-top: 25px;
    font-size: 12px
}

.prize-table>div {
    display: flex;
    justify-content: space-between;
    padding: 12px 0;
    border-bottom: 1px solid var(--line)
}

.prize-table strong {
    font-weight: 500
}

.prize-table>div>span:last-child {
    color: var(--accent)
}

.prize-table-head {
    color: var(--soft);
    font-size: 10px
}

.toast {
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    padding: 15px 22px;
    width: max-content;
    max-width: calc(100% - 35px);
    background: #292d38;
    color: #e2e8f5;
    border: 1px solid var(--line);
    border-radius: 8px;
    z-index: 1000;
    box-shadow: 0 10px 50px #0008;
    font-size: 12px;
    line-height: 1.6
}

.toast[hidden],[hidden] {
    display: none!important
}

.results-heading {
    padding-top: 24px;
    margin-top: 22px;
    border-top: 1px solid var(--line);
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    color: var(--accent);
    align-items: center
}

.results-heading>span:first-child {
    display: flex;
    align-items: center;
    gap: 6px
}

.results-heading>span:last-child {
    font-size: 8px;
    letter-spacing: 1.5px;
    color: var(--soft)
}

.ticket-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 12px;
    margin-top: 18px
}

.mini-ticket {
    border: 1px dashed rgba(var(--accent-rgb),.35);
    background: rgba(var(--accent-rgb),.035);
    border-radius: 6px;
    padding: 13px 10px;
    display: flex;
    align-items: center;
    gap: 7px
}

.mini-ticket .icon {
    height: 14px;
    width: 14px;
    color: var(--accent)
}

.mini-ticket strong {
    font-size: 12px;
    letter-spacing: 1px;
    font-weight: 500
}

.mini-ticket>span {
    font-size: 8px;
    color: var(--soft);
    margin-left: auto
}

.empty-tickets {
    font-size: 12px;
    line-height: 1.9;
    padding: 23px 0 6px;
    color: var(--soft)
}

#more-container {
    text-align: center
}

#load-more {
    margin-top: 20px
}

.winning-balls {
    display: flex;
    gap: 5px;
    margin-top: 25px;
    flex-wrap: wrap
}

.winning-balls>span {
    height: 38px;
    width: 29px;
    border-radius: 5px;
    background: var(--accent);
    color: var(--accent-dark);
    display: grid;
    place-items: center;
    font-size: 23px
}

.hash {
    font-size: 10px;
    word-break: break-all;
    color: var(--accent);
    display: block;
    margin-top: 12px
}

.service-error {
    padding-top: 120px
}

.service-error h1 {
    margin-top: 20px
}

.service-error p {
    margin: 20px 0
}

.preview-brand-switch {
    position: fixed;
    bottom: 16px;
    left: 16px;
    display: flex;
    align-items: center;
    gap: 12px;
    background: rgba(27,26,23,.95);
    padding: 10px 13px;
    font-size: 10px;
    border: 1px solid var(--line);
    border-radius: 7px;
    z-index: 6
}

.preview-brand-switch>span:first-child {
    color: var(--soft)
}

.preview-brand-switch a {
    padding: 5px 7px
}

.preview-brand-switch a[aria-current] {
    background: rgba(var(--accent-rgb),.13);
    color: var(--accent);
    border-radius: 4px
}

.draft-tag {
    color: #e0b45f;
    border-left: 1px solid var(--line);
    padding-left: 12px
}

.muted {
    color: var(--soft)
}

@media(min-width: 1600px) {
    .hero-image {
        background-position:center 48%;
        inset: -130px 0 -130px
    }

    .hero {
        height: 710px
    }

    .hero-content {
        padding-top: 66px
    }
}

@media(max-width: 1100px) {
    .wrap {
        width:calc(100% - 64px)
    }

    .site-header nav {
        gap: 20px
    }

    .countdown-section {
        gap: 20px
    }

    .countdown {
        gap: 12px
    }

    .countdown>div {
        width: 48px
    }

    .countdown-seal {
        padding-left: 20px
    }

    .prize-podium {
        padding: 0 10px
    }

    .prize-card h3 {
        font-size: 25px
    }

    .prize-card.first h3 {
        font-size: 31px
    }

    .hero-image {
        background-position: 58% center
    }

    .hero-vertical {
        display: none
    }

    .hero-number {
        font-size: 163px
    }

    .hero-million {
        font-size: 46px
    }
}

@media(max-width: 760px) {
    .wrap {
        width:calc(100% - 40px)
    }

    .announcement {
        font-size: 7px;
        letter-spacing: 1.2px;
        gap: 12px;
        height: 29px
    }

    .announcement-year {
        padding-left: 12px
    }

    .site-header {
        height: 78px
    }

    .site-header nav {
        display: none
    }

    .wordmark {
        font-size: 29px
    }

    .brand-emblem {
        width: 28px;
        height: 28px;
        font-size: 23px
    }

    .site-header .button {
        min-height: 36px;
        font-size: 10px;
        padding: 0 12px
    }

    .hero {
        height: 755px
    }

    .hero-content {
        padding-top: 32px
    }

    .hero-image {
        inset: 170px -50px -22px;
        background-size: auto 620px;
        background-repeat: no-repeat;
        background-position: 58% bottom;
        opacity: .85
    }

    .hero-shadow {
        background: linear-gradient(180deg,#1c1f26 3%,rgba(28,31,38,.98) 20%,rgba(28,31,38,.48) 48%,rgba(28,31,38,0) 70%,#1c1f26 100%)
    }

    html[data-brand=milosbet] .hero-shadow {
        background: linear-gradient(180deg,#131027 3%,rgba(19,16,39,.98) 20%,rgba(19,16,39,.48) 48%,transparent 70%,#131027 100%)
    }

    .eyebrow {
        font-size: 8px;
        letter-spacing: 1.8px
    }

    .hero-intro {
        font-size: 30px;
        margin-top: 22px
    }

    .hero-number {
        font-size: 148px
    }

    .hero h1 {
        width: auto
    }

    .hero-million {
        font-size: 42px;
        letter-spacing: 6px
    }

    .hero-million>span {
        font-size: 28px
    }

    .hero-prize-label {
        font-size: 8px;
        letter-spacing: 2.8px
    }

    .hero-description {
        font-size: 12px;
        max-width: 290px;
        margin-top: 20px;
        text-shadow: 0 1px 4px #000
    }

    .hero-actions {
        margin-top: 22px;
        gap: 22px
    }

    .hero-actions .button {
        min-height: 46px;
        padding: 0 19px
    }

    .hero-actions .text-link {
        font-size: 11px
    }

    .hero-footnote {
        margin-top: 16px;
        font-size: 9px
    }

    .year-ghost {
        font-size: 160px;
        bottom: 2px;
        right: 20px
    }

    .countdown-section {
        display: block;
        text-align: center;
        padding: 25px 0 28px
    }

    .countdown-heading h2 {
        font-size: 24px
    }

    .countdown-heading p {
        font-size: 9px
    }

    .countdown {
        justify-content: center;
        margin-top: 25px;
        gap: 15px
    }

    .countdown>div {
        width: 52px
    }

    .countdown strong {
        font-size: 39px
    }

    .countdown-seal {
        display: none
    }

    .ticket-section {
        padding-top: 57px
    }

    h2 {
        font-size: 29px;
        letter-spacing: -.8px
    }

    .section-kicker {
        font-size: 8px;
        letter-spacing: 2px
    }

    .section-subtitle {
        font-size: 11px;
        max-width: 310px;
        margin: 13px auto 0
    }

    .lookup-card {
        padding: 22px 18px;
        margin-top: 25px
    }

    .lookup-top {
        gap: 10px;
        padding-bottom: 18px
    }

    .lookup-top h3 {
        font-size: 15px
    }

    .lookup-top p {
        font-size: 9px;
        line-height: 1.6;
        max-width: 220px
    }

    .secure-note {
        display: none
    }

    .lookup-symbol {
        width: 34px;
        height: 34px
    }

    .lookup-input-row {
        flex-direction: column;
        gap: 10px
    }

    .input-icon input {
        font-size: 12px;
        padding: 16px 0
    }

    .lookup-input-row .button {
        width: 100%;
        font-size: 12px;
        justify-content: space-between;
        padding-inline:18px;min-height: 47px
    }

    .form-note {
        font-size: 8px;
        align-items: flex-start;
        margin-top: 12px
    }

    .form-note .icon {
        margin-top: 1px
    }

    .ticket-meta {
        flex-wrap: wrap;
        gap: 10px 17px;
        margin-top: 20px;
        font-size: 8px
    }

    .how-section {
        padding-top: 60px
    }

    .section-heading>p {
        display: none
    }

    .section-heading h2 {
        font-size: 29px
    }

    .steps {
        grid-template-columns: 1fr;
        margin-top: 24px;
        gap: 12px
    }

    .steps article {
        padding: 23px 22px
    }

    .step-icon {
        margin-bottom: 16px
    }

    .steps h3 {
        font-size: 17px
    }

    .steps p {
        max-width: none;
        font-size: 12px;
        line-height: 1.9
    }

    .step-detail {
        margin-top: 18px;
        padding-top: 13px
    }

    .example {
        flex-direction: column;
        gap: 10px;
        padding: 20px 10px;
        font-size: 10px
    }

    .example b {
        font-size: 12px
    }

    .prizes-section {
        padding-top: 64px
    }

    .prize-podium {
        display: flex;
        flex-direction: column;
        gap: 16px;
        padding: 0;
        margin-top: 43px;
        align-items: stretch
    }

    .prize-card {
        height: auto;
        padding: 24px 18px 0;
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        text-align: left;
        gap: 8px 0
    }

    .prize-card.first {
        order: -1;
        height: 268px;
        display: flex;
        text-align: center;
        padding-top: 29px
    }

    .prize-card .podium-spark {
        grid-row: 1/3;
        grid-column: 2;
        margin: 0;
        text-align: right;
        font-size: 48px;
        padding-right: 10px
    }

    .prize-card h3 {
        margin-top: 0;
        font-size: 27px;
        grid-row: 2
    }

    .prize-card>p {
        margin-top: 0;
        font-size: 9px
    }

    .prize-tag {
        grid-column: 1/3;
        margin-top: 9px;
        font-size: 8px;
        padding: 13px 0
    }

    .prize-card.first .prize-tag {
        margin-top: 15px;
        padding-bottom: 0
    }

    .prize-card.first h3 {
        font-size: 38px;
        margin-top: 8px
    }

    .prize-card.first .podium-crown {
        margin-top: 8px
    }

    .prize-card.first>p {
        margin-top: 0
    }

    .prize-explanation {
        font-size: 9px;
        padding-inline:10px}

    .finale {
        min-height: 335px;
        margin-top: 57px
    }

    .finale-inner {
        padding: 32px 23px
    }

    .finale h2 {
        font-size: 36px
    }

    .finale p {
        max-width: 180px;
        line-height: 1.7
    }

    .finale-year {
        font-size: 102px;
        right: 24px;
        top: 94px;
        opacity: .4
    }

    .finale-year>span {
        font-size: 70px;
        right: -25px;
        top: 135px
    }

    .finale .button {
        position: relative;
        z-index: 1
    }

    .rules-section {
        margin-top: 25px
    }

    .site-footer {
        padding: 34px 0 105px;
        flex-wrap: wrap;
        gap: 26px
    }

    .site-footer>.footer-note {
        width: 100%
    }

    .footer-links {
        margin-left: auto
    }

    .atmosphere-controls {
        right: 13px;
        bottom: 15px
    }

    .preview-brand-switch {
        bottom: 15px;
        left: 10px;
        gap: 5px;
        padding: 6px;
        font-size: 9px
    }

    .preview-brand-switch>span:first-child,.preview-brand-switch>.draft-tag {
        display: none
    }

    .ticket-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px
    }

    .mini-ticket {
        padding: 13px 7px;
        gap: 5px
    }

    .mini-ticket strong {
        font-size: 10px;
        letter-spacing: .5px
    }

    .mini-ticket>span {
        display: none
    }

    .info-dialog {
        padding: 32px 22px
    }

    .info-dialog h2 {
        font-size: 26px
    }

    .results-heading {
        font-size: 11px
    }

    .results-heading>span:last-child {
        display: none
    }

    .winning-balls {
        gap: 3px
    }

    .winning-balls>span {
        width: 22px;
        height: 32px;
        font-size: 20px
    }
}

@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior: auto
    }

    *,*::before,*::after {
        animation-duration: .01ms!important;
        transition-duration: .01ms!important
    }

    #snow {
        display: none
    }
}

.original-logo-frame {
    display: block;
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
    mix-blend-mode: lighten
}

.original-logo-frame img {
    display: block;
    position: relative;
    /* max-width: 50px; */
    height: 30px;
}

.logo-betovis {
    width: 180px;
    height: 50px
}

.logo-betovis img {
    width: 256px;
    left: -40px;
    top: -38px
}

.logo-milosbet {
    width: 180px;
    height: 50px;
    mix-blend-mode: normal
}

.logo-milosbet img {
    width: 180px;
    left: 0;
    top: -17px
}

.wordmark {
    letter-spacing: normal
}

.hero-number {
    background: linear-gradient(140deg,#ff9aaa,#fe1739 45%,#b70927);
    -webkit-background-clip: text;
    background-clip: text
}

html[data-brand=milosbet] .hero-number {
    background: linear-gradient(140deg,#f7d1ed,#dc4eb0 45%,#c6007f);
    -webkit-background-clip: text;
    background-clip: text
}

@media(max-width: 760px) {
    .logo-betovis {
        width:150px;
        height: 42px
    }

    .logo-betovis img {
        width: 213.333px;
        left: -33.333px;
        top: -31.667px
    }

    .logo-milosbet {
        width: 150px;
        height: 42px
    }

    .logo-milosbet img {
        width: 150px;
        left: 0;
        top: -14.17px
    }
}

.original-logo-frame.logo-custom {
    mix-blend-mode: normal
}

.original-logo-frame.logo-custom img {
    position: static;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: left center
}

.telegram-notice {
    margin: 26px auto 0;
    max-width: 815px;
    display: flex;
    align-items: center;
    gap: 16px;
    text-align: left;
    padding: 18px 22px;
    border-radius: 10px;
    border: 1px solid rgba(var(--accent-rgb),.45);
    background: linear-gradient(120deg,rgba(var(--accent-rgb),.13),rgba(var(--accent-rgb),.03))
}

.telegram-notice-icon {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--accent);
    color: #fff
}

.telegram-notice-icon .icon {
    width: 20px;
    height: 20px
}

.telegram-notice-text {
    flex: 1
}

.telegram-notice-text strong {
    font-size: 10px;
    letter-spacing: 2px;
    color: var(--accent);
    font-weight: 700
}

.telegram-notice-text p {
    font-size: 13px;
    line-height: 1.6;
    color: #eef1f6;
    margin-top: 4px
}

.telegram-notice-text b {
    color: var(--accent);
    font-weight: 600
}

.telegram-notice-button {
    min-height: 44px
}

.telegram-notice-button .icon {
    width: 16px;
    height: 16px
}

@media(max-width: 760px) {
    .telegram-notice {
        flex-wrap:wrap;
        padding: 18px
    }

    .telegram-notice-text p {
        font-size: 12px
    }

    .telegram-notice-button {
        width: 100%;
        justify-content: space-between
    }
}