*,*::before,*::after {
    box-sizing: border-box;
}
:root {
    --cream: #fffaf7;
    --surface: rgba(255, 255, 255, 0.88);
    --berry: #571443;
    --muted: #765a70;
    --pink: #f9509b;
    --pink-deep: #e73587;
    --mint: #72dfc0;
    --violet: #9a72ee;
    --shadow: 0 18px 45px rgba(93, 35, 79, 0.14);
}
html {
    scroll-behavior: smooth;
    scroll-padding-top: 104px;
}
body {
    margin: 0;
    color: var(--berry);
    background: var(--cream);
    font-family: "Nunito", sans-serif;
}
a {
    color: inherit;
    text-decoration: none;
}
.site-header {
    position: fixed;
    z-index: 1000;
    top: 0;
    right: 0;
    left: 0;
    padding: 14px 20px 0;
}
.header-shell {
    display: flex;
    align-items: center;
    gap: clamp(18px, 2vw, 36px);
    width: min(1280px, 100%);
    max-width: 1280px;
    min-height: 66px;
    margin: 0 auto;
    padding: 8px 12px 8px 20px;
    border: 1px solid rgba(255, 255, 255, 0.76);
    border-radius: 22px;
    background: rgba(255, 251, 247, 0.94);
    box-shadow: 0 8px 28px rgba(93, 35, 79, 0.08);
    backdrop-filter: blur(15px);
}
.brand {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    width: clamp(145px, 12vw, 178px);
}
.brand img {
    display: block;
    width: 100%;
    height: 42px;
    object-fit: contain;
}
.primary-nav {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    gap: clamp(13px, 1.25vw, 23px);
}
.primary-nav a {
    position: relative;
    font-size: 0.88rem;
    font-weight: 800;
    white-space: nowrap;
}
.primary-nav a::after {
    position: absolute;
    right: 50%;
    bottom: -7px;
    left: 50%;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--pink), var(--violet));
    content: "";
    transition: right 180ms ease, left 180ms ease;
}
.primary-nav a:hover::after,.primary-nav a:focus-visible::after {
    right: 0;
    left: 0;
}
.play-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 28px;
    border-radius: 999px;
    color: #fff;
    background: linear-gradient(135deg, var(--pink) 0%, var(--pink-deep) 48%, var(--violet) 100%);
    box-shadow: 0 11px 24px rgba(231, 53, 135, 0.28);
    font-family: "Fredoka", sans-serif;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    transition: transform 180ms ease, box-shadow 180ms ease;
}
.play-button:hover,.play-button:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 15px 30px rgba(231, 53, 135, 0.35);
}
.header-play {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 0 21px;
    font-size: 0.92rem;
}
.menu-toggle {
    display: none;
    width: 48px;
    height: 48px;
    padding: 12px;
    border: 0;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(92, 32, 75, 0.12);
}
.menu-toggle span {
    display: block;
    width: 100%;
    height: 3px;
    margin: 4px 0;
    border-radius: 3px;
    background: var(--berry);
}
.hero {
    position: relative;
    display: grid;
    min-height: 100svh;
    overflow: hidden;
    isolation: isolate;
    place-items: center;
    padding: 104px clamp(22px, 6vw, 100px) 44px;
    background: #fff5e8;
}
.hero-background,.hero-wash {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.hero-background {
    z-index: -3;
    object-fit: cover;
    object-position: center;
}
.hero-wash {
    z-index: -2;
    background: linear-gradient(90deg, rgba(255, 247, 238, 0.36) 0%, rgba(255, 247, 238, 0.12) 36%, transparent 52%), linear-gradient(180deg, rgba(255, 255, 255, 0.05), transparent 38%);
}
.hero-content {
    position: relative;
    z-index: 2;
    width: min(520px, 86vw);
    margin: 8vh 50vw 0 0;
    padding: 18px 0;
}
.hero-kicker {
    margin: 0 0 12px;
    color: var(--pink-deep);
    font-size: clamp(0.79rem, 1.2vw, 0.95rem);
    font-weight: 800;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}
.hero h1 {
    max-width: 540px;
    margin: 0;
    font-family: "Fredoka", sans-serif;
    font-size: clamp(3.1rem, 5vw, 5.2rem);
    font-weight: 700;
    line-height: 0.94;
    letter-spacing: -0.055em;
    text-wrap: balance;
}
.hero-copy {
    max-width: 510px;
    margin: 24px 0 28px;
    color: var(--muted);
    font-size: clamp(1rem, 1.5vw, 1.22rem);
    font-weight: 700;
    line-height: 1.55;
}
.hero-play {
    min-width: 152px;
}
.audience-note {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 17px 0 0;
    color: var(--muted);
    font-size: 0.94rem;
    font-weight: 800;
}
.audience-note span {
    color: var(--pink-deep);
}
.floating-bubble {
    position: absolute;
    z-index: 1;
    display: none;
    border: 1px solid rgba(255, 255, 255, 0.82);
    border-radius: 50%;
    background: radial-gradient(circle at 30% 25%, #fff 0 3%, rgba(255, 255, 255, 0.34) 15%, rgba(120, 226, 197, 0.22) 48%, rgba(241, 78, 156, 0.2) 72%, rgba(255, 255, 255, 0.05) 100%);
    box-shadow: inset -12px -14px 25px rgba(149, 104, 235, 0.14), 0 12px 32px rgba(96, 45, 81, 0.11);
    pointer-events: none;
    animation: float 6s ease-in-out infinite;
}
.bubble-one {
    top: 18%;
    left: 3%;
    width: 76px;
    height: 76px;
}
.bubble-two {
    right: 7%;
    bottom: 9%;
    width: 108px;
    height: 108px;
    animation-delay: -2s;
}
.bubble-three {
    top: 25%;
    right: 4%;
    width: 44px;
    height: 44px;
    animation-delay: -4s;
}
@keyframes float {
    0%,100% {
        transform: translate3d(0, 0, 0);
    }
    50% {
        transform: translate3d(0, -14px, 0);
    }
}
@media (max-width: 1180px) {
    .primary-nav {
        gap: 15px;
    }
    .primary-nav a {
        font-size: 0.82rem;
    }
    .hero-content {
        margin-right: 40vw;
    }
}
@media (max-width: 960px) {
    .header-shell {
        justify-content: space-between;
    }
    .brand {
        width: 180px;
    }
    .menu-toggle {
        display: block;
        order: 3;
    }
    .primary-nav {
        position: absolute;
        top: 90px;
        right: 18px;
        left: 18px;
        display: none;
        align-items: stretch;
        flex-direction: column;
        gap: 0;
        padding: 18px;
        border-radius: 24px;
        background: rgba(255, 255, 255, 0.96);
        box-shadow: var(--shadow);
    }
    .primary-nav.is-open {
        display: flex;
    }
    .primary-nav a {
        padding: 11px 8px;
        font-size: 1rem;
    }
    .primary-nav a::after {
        display: none;
    }
    .header-play {
        margin-left: auto;
    }
    .hero {
        align-items: end;
        min-height: 860px;
    }
    .hero-background {
        object-position: 61% center;
    }
    .hero-content {
        width: min(580px, 94vw);
        margin: 0 auto;
        padding: 28px;
        border: 1px solid rgba(255, 255, 255, 0.74);
        border-radius: 30px;
        background: rgba(255, 252, 247, 0.84);
        box-shadow: 0 18px 45px rgba(93, 35, 79, 0.12);
        backdrop-filter: blur(14px);
    }
}
@media (max-width: 620px) {
    html {
        scroll-padding-top: 76px;
    }
    .site-header {
        padding: 0;
    }
    .header-shell {
        min-height: 68px;
        padding: 7px 10px 7px 13px;
        border-radius: 0;
    }
    .brand {
        width: 142px;
    }
    .brand img {
        height: 42px;
    }
    .header-play {
        min-height: 44px;
        padding: 0 17px;
        font-size: 0.88rem;
    }
    .menu-toggle {
        width: 44px;
        height: 44px;
    }
    .primary-nav {
        top: 68px;
        right: 12px;
        left: 12px;
    }
    .hero {
        min-height: 780px;
        padding: 120px 14px 24px;
    }
    .hero-background {
        object-position: 68% center;
    }
    .hero-wash {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.06) 22%, rgba(255, 240, 247, 0.88) 70%, rgba(255, 250, 247, 0.98) 100%);
    }
    .hero-content {
        width: 100%;
        padding: 27px 23px 30px;
        border-radius: 26px;
        text-align: center;
    }
    .hero h1 {
        font-size: clamp(3.25rem, 17vw, 4.5rem);
    }
    .hero-copy {
        margin: 18px auto 23px;
        font-size: 1rem;
    }
    .audience-note {
        justify-content: center;
        font-size: 0.86rem;
    }
    .bubble-one {
        display: none;
    }
    .bubble-two {
        right: -20px;
        bottom: 31%;
        width: 78px;
        height: 78px;
    }
}
@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
    .floating-bubble {
        animation: none;
    }
    .play-button {
        transition: none;
    }
}
.games-section {
    padding:88px clamp(18px,4vw,64px);
    background:linear-gradient(180deg,#fffaf7 0%,#f4fffb 100%)
}
.games-shell {
    max-width:1500px;
    margin:auto
}
.games-heading {
    max-width:760px;
    margin:0 auto 34px;
    text-align:center
}
.section-kicker {
    margin:0 0 8px;
    color:var(--pink-deep);
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase
}
.games-heading h2 {
    margin:0;
    font:700 clamp(2.5rem,4vw,4.3rem)/1 "Fredoka",sans-serif
}
.games-heading>p:last-child {
    margin:18px auto 0;
    color:var(--muted);
    font-size:1.08rem;
    line-height:1.6
}
.game-tabs {
    display:flex;
    justify-content:center;
    gap:10px;
    overflow-x:auto;
    padding:4px 4px 0
}
.game-tab,.slot-filter,.category-more {
    border:0;
    cursor:pointer;
    font:800 .95rem "Nunito",sans-serif
}
.game-tab {
    padding:14px 21px;
    border-radius:18px 18px 0 0;
    color:var(--berry);
    background:#f7eaf1
}
.game-tab span,.slot-filter span {
    display:none
}
.game-tab.is-active {
    color:#fff;
    background:linear-gradient(135deg,var(--pink),var(--violet));
    box-shadow:0 10px 24px rgba(231,53,135,.2)
}
.game-tab.is-active span,.slot-filter.is-active span {
    display:inline
}
.games-panel {
    padding:28px;
    border:1px solid rgba(126,83,111,.12);
    border-radius:30px;
    background:rgba(255,255,255,.9);
    box-shadow:0 22px 55px rgba(93,35,79,.1)
}
.category-summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    max-width:1180px;
    margin:auto
}
.category-summary h3 {
    margin:0 0 6px;
    font:700 2rem "Fredoka",sans-serif
}
.category-summary p {
    margin:0;
    color:var(--muted)
}
.category-more {
    flex:none;
    padding:11px 16px;
    border-radius:14px;
    color:var(--berry);
    background:#fff0f6;
    box-shadow:inset 0 0 0 1px rgba(231,53,135,.16)
}
.category-details {
    max-width:1180px;
    margin:16px auto 0;
    padding:18px 20px;
    border-radius:16px;
    background:#fff8e9;
    color:var(--muted);
    line-height:1.6
}
.slot-filter-wrap {
    max-width:1180px;
    margin:22px auto 0
}
.slot-filter-wrap>p:first-child {
    margin:0 0 10px;
    font-weight:900
}
.slot-filters {
    display:flex;
    flex-wrap:wrap;
    gap:9px
}
.slot-filter {
    padding:10px 15px;
    border-radius:999px;
    color:var(--berry);
    background:#eef8f5
}
.slot-filter.is-active {
    color:#fff;
    background:#5dbfa5
}
.slot-note {
    margin:10px 0 0;
    color:var(--muted);
    font-size:.92rem
}
.game-grid {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:16px;
    max-width:1320px;
    margin:26px auto 0
}
.game-card {
    min-width:0
}
.game-card button {
    display:flex;
    width:100%;
    height:100%;
    padding:0 0 13px;
    border:2px solid transparent;
    border-radius:18px;
    overflow:hidden;
    align-items:stretch;
    flex-direction:column;
    color:var(--berry);
    background:#fff;
    box-shadow:0 10px 25px rgba(84,38,72,.1);
    cursor:pointer;
    text-align:left;
    transition:transform .18s,border-color .18s
}
.game-card button:hover,.game-card button:focus-visible {
    transform:translateY(-4px);
    outline:3px solid rgba(249,80,155,.25);
    outline-offset:2px
}
.game-card.is-selected button {
    border-color:var(--pink)
}
.game-card img {
    width:100%;
    aspect-ratio:184/260;
    object-fit:cover;
    background:#f4eaf0
}
.game-card strong {
    padding:12px 12px 5px;
    font-size:.94rem;
    line-height:1.25
}
.game-card span {
    margin-top:auto;
    padding:0 12px;
    color:var(--pink-deep);
    font-size:.82rem;
    font-weight:900
}
.game-explainer {
    position:relative;
    max-width:1180px;
    margin:22px auto 0;
    padding:26px 60px 26px 28px;
    border-radius:22px;
    background:linear-gradient(135deg,#fff1f7,#effcf8);
    box-shadow:inset 0 0 0 1px rgba(126,83,111,.1)
}
.explainer-close {
    position:absolute;
    top:14px;
    right:16px;
    width:38px;
    height:38px;
    border:0;
    border-radius:50%;
    color:var(--berry);
    background:#fff;
    cursor:pointer;
    font-size:1.5rem
}
.explainer-provider {
    margin:0;
    color:var(--pink-deep);
    font-weight:900
}
.game-explainer h3 {
    margin:4px 0 14px;
    font:700 1.8rem "Fredoka",sans-serif
}
.game-explainer h4 {
    margin:14px 0 4px
}
.game-explainer p {
    margin:0;
    color:var(--muted);
    line-height:1.6
}
@media(max-width:1020px) {
    .game-grid {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
    .category-summary {
        align-items:flex-start;
        flex-direction:column
    }
    .game-tabs {
        justify-content:flex-start
    }
}
@media(max-width:620px) {
    .games-section {
        padding:62px 13px
    }
    .games-panel {
        padding:18px 12px;
        border-radius:22px
    }
    .game-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px
    }
    .game-tab {
        padding:12px 15px;
        white-space:nowrap
    }
    .game-card strong {
        font-size:.84rem
    }
    .category-more {
        width:100%
    }
    .game-explainer {
        padding:22px 48px 22px 18px
    }
}
.games-section {
    padding-top:56px;
    padding-bottom:38px
}
.games-heading {
    margin-bottom:24px
}
.games-panel {
    padding-top:24px;
    padding-bottom:20px
}
.game-grid {
    margin-top:20px
}
.game-card img {
    aspect-ratio:4/5;
    object-fit:cover
}
@media(max-width:620px) {
    .games-section {
        padding-top:44px;
        padding-bottom:28px
    }
}
.games-section {
    position:relative;
    overflow:hidden;
    padding-top:34px;
    background:linear-gradient(145deg,#fff9f3 0%,#fff 44%,#eefaf7 100%);
    border-top:1px solid rgba(126,83,111,.1)
}
.games-section::before,.games-section::after {
    content:"";
    position:absolute;
    border-radius:50%;
    pointer-events:none;
    filter:blur(2px)
}
.games-section::before {
    width:260px;
    height:260px;
    top:-125px;
    left:-70px;
    background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.9),rgba(249,80,155,.12) 48%,transparent 70%)
}
.games-section::after {
    width:340px;
    height:340px;
    right:-150px;
    top:90px;
    background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.8),rgba(93,191,165,.14) 48%,transparent 70%)
}
.games-shell {
    position:relative;
    z-index:1
}
.games-heading {
    box-sizing:border-box;
    max-width:1180px;
    margin:0 auto 20px;
    padding:26px 32px;
    text-align:left;
    border:1px solid rgba(231,53,135,.12);
    border-radius:28px;
    background:linear-gradient(120deg,rgba(255,240,246,.92),rgba(255,251,242,.94) 52%,rgba(236,250,246,.94));
    box-shadow:0 16px 38px rgba(93,35,79,.07)
}
.games-heading h2 {
    max-width:760px;
    font-size:clamp(2.3rem,3.4vw,3.55rem)
}
.games-heading>p:last-child {
    max-width:820px;
    margin:12px 0 0;
    font-size:1.02rem
}
.games-panel {
    background:rgba(255,255,255,.94);
    box-shadow:0 18px 45px rgba(93,35,79,.08)
}
@media(max-width:620px) {
    .games-heading {
        padding:22px 20px;
        border-radius:22px
    }
    .games-heading h2 {
        font-size:2.25rem
    }
    .games-heading>p:last-child {
        font-size:.96rem
    }
}
.games-section {
    box-sizing:border-box;
    min-height:100svh;
    padding:54px clamp(22px,5vw,72px) 46px;
    background:linear-gradient(135deg,#fff4ed 0%,#fbeef3 42%,#edf8f4 100%);
    border-top:8px solid #f7c9d8
}
.games-section::before {
    width:420px;
    height:420px;
    top:-210px;
    left:-130px;
    background:radial-gradient(circle,rgba(249,80,155,.14),transparent 68%)
}
.games-section::after {
    width:480px;
    height:480px;
    right:-210px;
    top:180px;
    background:radial-gradient(circle,rgba(93,191,165,.18),transparent 68%)
}
.games-heading {
    max-width:1320px;
    margin:0 auto 22px;
    padding:0 4px 18px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none
}
.games-heading h2 {
    color:#5e1249
}
.games-heading>p:last-child {
    color:#76566c
}
.game-tabs {
    gap:8px
}
.game-tab {
    color:#64164e;
    background:#f5dde7
}
.game-tab.is-active {
    background:linear-gradient(135deg,#e73587,#8d56cf)
}
.games-panel {
    padding:24px 0 16px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none
}
.category-summary {
    box-sizing:border-box;
    max-width:1320px;
    padding:19px 23px;
    border:1px solid rgba(126,83,111,.13);
    border-radius:22px;
    background:rgba(255,248,244,.74);
    box-shadow:0 12px 28px rgba(93,35,79,.06)
}
.slot-filter-wrap {
    max-width:1320px;
    padding:0 22px
}
.game-grid {
    max-width:1320px
}
.game-card button {
    border:1px solid rgba(126,83,111,.15);
    background:#fff8f4;
    box-shadow:0 10px 22px rgba(84,38,72,.09)
}
.game-card img {
    width:100%;
    aspect-ratio:184/260;
    object-fit:cover;
    object-position:center;
    background:#eadde5
}
.game-card strong {
    color:#591345
}
.category-more {
    background:#f8dfE9
}
@media(max-width:620px) {
    .games-section {
        min-height:100svh;
        padding:38px 13px 28px
    }
    .games-heading {
        padding:0 8px 16px
    }
    .games-panel {
        padding-top:18px
    }
    .category-summary {
        padding:17px
    }
    .slot-filter-wrap {
        padding:0 5px
    }
}
.games-section {
    color:#fff;
    min-height:100svh;
    padding:48px clamp(22px,5vw,72px) 42px;
    background:radial-gradient(circle at 82% 14%,rgba(43,89,182,.34),transparent 32%),
        radial-gradient(circle at 8% 84%,rgba(21,143,151,.2),transparent 30%),
        linear-gradient(145deg,#071033 0%,#0b1542 52%,#080d2c 100%);
    border-top:6px solid #f3c924
}
.games-section::before {
    background:radial-gradient(circle,rgba(83,145,255,.18),transparent 68%)
}
.games-section::after {
    background:radial-gradient(circle,rgba(40,205,188,.14),transparent 68%)
}
.games-heading {
    max-width:1320px;
    margin-bottom:22px;
    color:#fff
}
.games-heading h2 {
    color:#fff;
    text-shadow:0 3px 20px rgba(0,0,0,.22)
}
.games-heading>p:last-child {
    color:#cbd4f4
}
.games-section .section-kicker {
    color:#f4d32f
}
.game-tab {
    color:#dce4ff;
    background:#141f55;
    border:1px solid #2a3978
}
.game-tab.is-active {
    color:#081033;
    background:#f4d32f;
    border-color:#f4d32f;
    box-shadow:0 10px 26px rgba(244,211,47,.2)
}
.games-panel {
    background:transparent
}
.category-summary {
    border:1px solid #293a7e;
    background:linear-gradient(115deg,rgba(18,30,82,.95),rgba(10,20,61,.94));
    box-shadow:0 16px 34px rgba(0,0,0,.2)
}
.category-summary h3 {
    color:#fff
}
.category-summary p,.slot-note {
    color:#bec9ec
}
.category-more {
    color:#f4d32f;
    background:#101b4d;
    box-shadow:inset 0 0 0 1px #354991
}
.category-details {
    color:#d8e0fa;
    background:#111d50;
    border:1px solid #304487
}
.slot-filter-wrap>p:first-child {
    color:#fff
}
.slot-filter {
    color:#dce4ff;
    background:#142055;
    border:1px solid #2b3d7d
}
.slot-filter.is-active {
    color:#071033;
    background:#f4d32f;
    border-color:#f4d32f
}
.game-grid {
    gap:12px
}
.game-card button {
    position:relative;
    height:auto;
    padding:0;
    border:2px solid #2359b4;
    border-radius:17px;
    background:#0d1747;
    box-shadow:0 12px 28px rgba(0,0,0,.3)
}
.game-card button::after {
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:38%;
    background:linear-gradient(transparent,rgba(3,8,30,.94));
    pointer-events:none
}
.game-card button:hover,.game-card button:focus-visible {
    transform:translateY(-5px);
    border-color:#f4d32f;
    outline:0;
    box-shadow:0 16px 34px rgba(0,0,0,.4)
}
.game-card.is-selected button {
    border-color:#f4d32f
}
.game-card img {
    display:block;
    width:100%;
    aspect-ratio:184/260;
    object-fit:cover;
    object-position:center;
    background:#101944
}
.game-card strong {
    position:absolute;
    z-index:1;
    left:13px;
    right:13px;
    bottom:33px;
    padding:0;
    color:#fff;
    font-size:.96rem;
    line-height:1.2;
    text-shadow:0 2px 6px rgba(0,0,0,.8)
}
.game-card span {
    position:absolute;
    z-index:1;
    left:13px;
    bottom:12px;
    margin:0;
    padding:0;
    color:#f4d32f;
    font-size:.8rem
}
.game-explainer {
    color:#fff;
    background:linear-gradient(135deg,#13225c,#102f60);
    box-shadow:inset 0 0 0 1px #3659a0,0 15px 32px rgba(0,0,0,.24)
}
.game-explainer p {
    color:#d5def8
}
.explainer-close {
    color:#081033;
    background:#f4d32f
}
@media(max-width:620px) {
    .games-section {
        padding:36px 13px 28px
    }
    .game-tabs {
        justify-content:flex-start
    }
    .game-card strong {
        font-size:.82rem;
        bottom:31px
    }
    .game-card span {
        font-size:.74rem
    }
}
.games-section {
    padding-top:118px;
    border-top:0;
    background:radial-gradient(circle at 82% 22%,rgba(43,89,182,.34),transparent 32%),
        radial-gradient(circle at 8% 86%,rgba(21,143,151,.2),transparent 30%),
        linear-gradient(180deg,#f7ddcf 0,#c9ddd4 34px,#738b91 68px,#26395f 96px,#0b1542 132px,#080d2c 100%)
}
.games-section::before {
    top:18px;
    opacity:.65
}
.games-section::after {
    top:220px
}
@media(max-width:620px) {
    .games-section {
        padding-top:96px;
        background:radial-gradient(circle at 82% 22%,rgba(43,89,182,.3),transparent 34%),
            linear-gradient(180deg,#f7ddcf 0,#c9ddd4 28px,#647b85 56px,#26395f 78px,#0b1542 108px,#080d2c 100%)
    }
}
.games-section {
    padding-top:58px;
    border-top:0;
    background:radial-gradient(circle at 84% 14%,rgba(229,178,83,.24),transparent 28%),
        radial-gradient(circle at 10% 86%,rgba(231,105,83,.2),transparent 30%),
        linear-gradient(145deg,#147d78 0%,#0d6268 48%,#084858 100%)
}
.games-section::before {
    top:-150px;
    background:radial-gradient(circle,rgba(255,224,178,.2),transparent 68%);
    opacity:1
}
.games-section::after {
    top:170px;
    background:radial-gradient(circle,rgba(231,105,83,.18),transparent 68%)
}
.games-heading>p:last-child {
    color:#d8f1ed
}
.games-section .section-kicker {
    color:#f3c66f
}
.game-tab {
    color:#e9fbf7;
    background:rgba(5,64,74,.72);
    border-color:rgba(125,214,202,.48)
}
.game-tab.is-active {
    color:#173e42;
    background:linear-gradient(135deg,#ef9a72,#e8bd62);
    border-color:#efc779;
    box-shadow:0 10px 26px rgba(232,189,98,.22)
}
.category-summary {
    border-color:rgba(133,218,205,.4);
    background:linear-gradient(115deg,rgba(7,73,82,.88),rgba(7,59,71,.9))
}
.category-summary p,.slot-note {
    color:#d3ece8
}
.category-more {
    color:#f4cc7d;
    background:rgba(5,63,74,.8);
    box-shadow:inset 0 0 0 1px rgba(232,189,98,.58)
}
.category-details {
    color:#e0f2ef;
    background:rgba(5,65,74,.88);
    border-color:rgba(125,214,202,.45)
}
.slot-filter {
    color:#e8faf6;
    background:rgba(5,66,75,.76);
    border-color:rgba(125,214,202,.45)
}
.slot-filter.is-active {
    color:#173e42;
    background:linear-gradient(135deg,#ef9a72,#e8bd62);
    border-color:#efc779
}
.game-card button {
    border-color:#d6a951;
    background:#084552
}
.game-card button:hover,.game-card button:focus-visible,.game-card.is-selected button {
    border-color:#f0c978;
    box-shadow:0 16px 34px rgba(4,43,50,.42)
}
.game-card span {
    color:#f2c978
}
.game-explainer {
    background:linear-gradient(135deg,#09636a,#0a4e5c);
    box-shadow:inset 0 0 0 1px rgba(232,189,98,.6),0 15px 32px rgba(4,43,50,.3)
}
.explainer-close {
    color:#173e42;
    background:#efc779
}
@media(max-width:620px) {
    .games-section {
        padding-top:42px;
        background:radial-gradient(circle at 82% 12%,rgba(229,178,83,.2),transparent 30%),linear-gradient(145deg,#147d78,#0d6268 52%,#084858)
    }
}
.live-section {
    scroll-margin-top:96px;
    padding:84px clamp(22px,5vw,72px);
    background:radial-gradient(circle at 90% 12%,rgba(232,187,104,.18),transparent 27%),
        radial-gradient(circle at 5% 88%,rgba(224,105,84,.12),transparent 30%),
        linear-gradient(145deg,#fff8ef,#f7eee8 54%,#e8f5f1);
    color:#4f2742
}
.live-shell {
    max-width:1500px;
    margin:auto
}
.live-heading {
    max-width:930px;
    margin:0 0 42px
}
.live-kicker,.live-category-eyebrow {
    margin:0 0 8px;
    color:#c05d4b;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase
}
.live-heading h2 {
    margin:0;
    font:700 clamp(2.7rem,4.5vw,4.8rem)/1 "Fredoka",sans-serif;
    color:#145e60
}
.live-heading>p:last-child {
    max-width:850px;
    margin:18px 0 0;
    color:#74596b;
    font-size:1.08rem;
    line-height:1.65
}
.live-layout {
    display:grid;
    grid-template-columns:minmax(220px,270px) minmax(0,1fr);
    gap:34px;
    align-items:start
}
.live-sidebar {
    position:relative;
    min-height:0
}
.live-tabs {
    display:grid;
    gap:9px
}
.live-tab {
    position:relative;
    width:100%;
    padding:15px 18px;
    border:1px solid rgba(20,94,96,.18);
    border-radius:15px;
    color:#345b59;
    background:rgba(255,255,255,.72);
    cursor:pointer;
    text-align:left;
    font:900 .96rem "Nunito",sans-serif;
    transition:transform .18s,background .18s,color .18s
}
.live-tab::after {
    content:"›";
    position:absolute;
    right:17px;
    font-size:1.25rem
}
.live-tab:hover,.live-tab:focus-visible {
    transform:translateX(4px);
    outline:3px solid rgba(224,105,84,.2);
    outline-offset:2px
}
.live-tab.is-active {
    color:#fff;
    background:linear-gradient(135deg,#147d78,#0b5960);
    border-color:#147d78;
    box-shadow:0 12px 25px rgba(20,94,96,.2)
}
.live-content {
    min-width:0
}
.live-category-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-bottom:18px;
    padding:22px 25px;
    border:1px solid rgba(20,94,96,.14);
    border-radius:22px;
    background:rgba(255,255,255,.76);
    box-shadow:0 13px 30px rgba(79,39,66,.07)
}
.live-category-head h3 {
    margin:0 0 5px;
    font:700 2.15rem "Fredoka",sans-serif;
    color:#145e60
}
.live-category-head p:last-child {
    margin:0;
    color:#755d6e
}
.live-about {
    flex:none;
    padding:11px 15px;
    border:1px solid rgba(192,93,75,.28);
    border-radius:13px;
    color:#9f493e;
    background:#fff5ef;
    cursor:pointer;
    font:900 .9rem "Nunito",sans-serif
}
.live-category-details {
    margin:0 0 18px;
    padding:18px 21px;
    border-radius:16px;
    background:#e7f4ef;
    color:#536d68;
    line-height:1.65
}
.live-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,230px));
    gap:18px;
    align-items:start
}
.live-card button {
    display:flex;
    width:100%;
    padding:0 0 11px;
    border:1px solid rgba(20,94,96,.18);
    border-radius:17px;
    overflow:hidden;
    flex-direction:column;
    color:#4f2742;
    background:#fffaf5;
    box-shadow:0 11px 25px rgba(79,39,66,.09);
    cursor:pointer;
    text-align:left;
    transition:transform .18s,border-color .18s
}
.live-card button:hover,.live-card button:focus-visible {
    transform:translateY(-4px);
    border-color:#d46c55;
    outline:3px solid rgba(224,105,84,.2);
    outline-offset:2px
}
.live-card.is-selected button {
    border-color:#147d78;
    box-shadow:0 0 0 2px rgba(20,125,120,.16)
}
.live-card img {
    display:block;
    width:100%;
    aspect-ratio:184/260;
    object-fit:cover;
    background:#e7f1ed
}
.live-card strong {
    padding:11px 12px 4px;
    line-height:1.2
}
.live-card span {
    padding:0 12px;
    color:#c05d4b;
    font-size:.8rem;
    font-weight:900
}
.live-explainer {
    position:relative;
    margin-top:20px;
    padding:25px 58px 25px 26px;
    border-radius:20px;
    color:#fff;
    background:linear-gradient(135deg,#147d78,#0a5961);
    box-shadow:0 15px 32px rgba(20,94,96,.2)
}
.live-explainer-close {
    position:absolute;
    top:13px;
    right:15px;
    width:38px;
    height:38px;
    border:0;
    border-radius:50%;
    color:#55402a;
    background:#efc978;
    cursor:pointer;
    font-size:1.45rem
}
.live-provider {
    margin:0;
    color:#f2ce84;
    font-weight:900
}
.live-explainer h3 {
    margin:4px 0 13px;
    font:700 1.8rem "Fredoka",sans-serif
}
.live-explainer h4 {
    margin:13px 0 4px
}
.live-explainer p {
    margin:0;
    color:#e2f3ef;
    line-height:1.6
}
@media(max-width:980px) {
    .live-layout {
        grid-template-columns:1fr
    }
    .live-sidebar {
        min-height:0
    }
    .live-tabs {
        display:flex;
        overflow-x:auto;
        padding:2px 2px 7px
    }
    .live-tab {
        flex:0 0 auto;
        width:auto;
        white-space:nowrap
    }
    .live-tab::after {
        display:none
    }
    .live-grid {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
}
@media(max-width:620px) {
    .live-section {
        padding:62px 13px
    }
    .live-heading {
        margin-bottom:28px
    }
    .live-heading h2 {
        font-size:2.55rem
    }
    .live-category-head {
        align-items:flex-start;
        flex-direction:column;
        padding:18px
    }
    .live-about {
        width:100%
    }
    .live-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:11px
    }
    .live-card strong {
        font-size:.85rem
    }
    .live-card span {
        font-size:.74rem
    }
}
.live-section {
    background:radial-gradient(circle at 8% 12%,rgba(238,164,112,.22),transparent 28%),
        radial-gradient(circle at 92% 82%,rgba(105,200,185,.25),transparent 31%),
        linear-gradient(135deg,#f8eadf 0%,#eef6ef 54%,#d8efea 100%);
    color:#40283a
}
.live-heading {
    max-width:1060px;
    margin-bottom:34px
}
.live-heading>p:last-child {
    color:#513f4d;
    font-weight:600
}
.live-layout {
    display:block
}
.live-sidebar {
    margin:0 0 28px
}
.live-tabs {
    display:flex;
    gap:10px;
    overflow-x:auto;
    padding:3px 2px 8px;
    scrollbar-width:thin
}
.live-tab {
    flex:1 0 150px;
    width:auto;
    text-align:center;
    color:#245a59;
    background:rgba(255,250,244,.76);
    border-color:rgba(20,94,96,.24)
}
.live-tab::after {
    display:none
}
.live-tab:hover,.live-tab:focus-visible {
    transform:translateY(-2px)
}
.live-content {
    width:100%
}
.live-category-head {
    padding:0 0 22px;
    border:0;
    border-bottom:1px solid rgba(20,94,96,.22);
    border-radius:0;
    background:transparent;
    box-shadow:none
}
.live-category-head h3 {
    font-size:2.45rem
}
.live-category-head p:last-child {
    max-width:850px;
    color:#513f4d;
    font-weight:650;
    line-height:1.55
}
.live-about {
    color:#7d392f;
    background:#f7d8c6;
    border-color:#d98a68
}
.live-category-details {
    margin-bottom:24px;
    padding:22px 25px;
    color:#254d4c;
    background:rgba(216,239,234,.88);
    border:1px solid rgba(20,94,96,.2)
}
.live-category-details p {
    margin:0
}
.live-category-details p+p {
    margin-top:12px
}
.live-grid {
    grid-template-columns:repeat(3,minmax(200px,1fr));
    gap:22px;
    width:100%
}
.live-card button {
    height:100%;
    padding-bottom:10px;
    background:#fff8f1;
    border-color:rgba(20,94,96,.24);
    box-shadow:0 12px 28px rgba(43,74,68,.12)
}
.live-card img {
    aspect-ratio:279/399;
    object-position:center
}
.live-card strong {
    font-size:1rem
}
.live-card span {
    color:#a84737
}
.live-explainer {
    padding:28px 62px 30px 30px;
    background:linear-gradient(135deg,#0e6d6b,#12545b)
}
.live-explainer-lead {
    max-width:900px;
    font-size:1.04rem
}
.live-rule-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
    margin-top:20px
}
.live-rule-grid section {
    padding:17px 18px;
    border-radius:14px;
    background:rgba(255,255,255,.08)
}
.live-rule-grid h4 {
    color:#f4ce83
}
.live-rule-grid p {
    font-size:.94rem
}
@media(max-width:980px) {
    .live-grid {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
    .live-rule-grid {
        grid-template-columns:1fr
    }
    .live-tab {
        flex-basis:145px
    }
}
@media(max-width:620px) {
    .live-section {
        padding:56px 14px
    }
    .live-category-head {
        gap:16px
    }
    .live-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px
    }
    .live-tab {
        flex:0 0 auto;
        padding:12px 16px
    }
    .live-explainer {
        padding:24px 48px 24px 20px
    }
    .live-rule-grid {
        gap:12px
    }
    .live-rule-grid section {
        padding:14px
    }
}
.live-shell {
    max-width:1500px
}
.live-layout {
    display:grid;
    grid-template-columns:minmax(620px,760px) minmax(320px,1fr);
    gap:34px;
    align-items:start
}
.live-content {
    width:auto
}
.live-sidebar {
    margin:0;
    padding:28px;
    border-radius:24px;
    background:linear-gradient(145deg,rgba(14,109,107,.96),rgba(15,78,86,.98));
    box-shadow:0 20px 42px rgba(18,73,72,.18);
    position:sticky;
    top:100px
}
.live-category-head {
    display:block;
    margin:0 0 22px;
    padding:0 0 22px;
    border-bottom-color:rgba(255,255,255,.2)
}
.live-category-head h3 {
    color:#fff
}
.live-category-head p:last-child {
    color:#def3ed;
    font-weight:700
}
.live-category-eyebrow {
    color:#f1bf70
}
.live-about {
    width:100%;
    margin-top:18px;
    color:#173e42;
    background:#f0c879;
    border:0
}
.live-tabs {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    padding:0;
    overflow:visible
}
.live-tab {
    min-width:0;
    flex:none;
    padding:12px 10px;
    color:#e6f6f2;
    background:rgba(255,255,255,.08);
    border-color:rgba(255,255,255,.18);
    font-size:.86rem;
    text-align:center
}
.live-tab.is-active {
    color:#173e42;
    background:linear-gradient(135deg,#f3d07d,#e99a70);
    border-color:#f3d07d;
    box-shadow:none
}
.live-category-details {
    margin:18px 0 0;
    color:#e4f5f1;
    background:rgba(4,54,61,.55);
    border-color:rgba(255,255,255,.16);
    font-size:.92rem
}
.live-grid {
    grid-template-columns:repeat(3,minmax(0,230px));
    gap:18px;
    justify-content:start
}
.live-card img {
    aspect-ratio:279/399
}
.live-card strong {
    padding-top:9px;
    font-size:.9rem
}
.live-card span {
    font-size:.76rem
}
.live-explainer {
    margin-top:28px
}
@media(max-width:1100px) {
    .live-layout {
        grid-template-columns:1fr
    }
    .live-sidebar {
        position:static;
        grid-row:1
    }
    .live-tabs {
        display:flex;
        overflow-x:auto
    }
    .live-tab {
        flex:0 0 150px
    }
    .live-content {
        grid-row:2
    }
    .live-grid {
        grid-template-columns:repeat(3,minmax(0,230px));
        justify-content:center
    }
}
@media(max-width:620px) {
    .live-sidebar {
        padding:20px
    }
    .live-tabs {
        display:flex
    }
    .live-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px
    }
    .live-card img {
        aspect-ratio:279/399
    }
}
.live-layout {
    align-items:stretch
}
.live-sidebar {
    position:relative;
    top:auto;
    height:auto;
    min-height:0;
    display:flex;
    flex-direction:column
}
.live-tabs {
    margin-top:auto
}
.live-category-head {
    margin-bottom:18px
}
.live-tabs .live-tab:last-child {
    grid-column:1/-1;
    width:calc(50% - 5px);
    justify-self:center
}
@media(max-width:1100px) {
    .live-sidebar {
        display:block
    }
    .live-tabs {
        margin-top:0
    }
}
@media(min-width:1101px) {
    .live-layout {
        grid-template-columns:minmax(760px,900px) minmax(430px,500px);
        gap:32px;
        justify-content:center
    }
    .live-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
        width:100%
    }
    .live-sidebar {
        width:100%;
        box-sizing:border-box
    }
}
.sports-section {
    position:relative;
    scroll-margin-top:92px;
    overflow:hidden;
    padding:88px clamp(22px,4vw,68px);
    color:#fff;
    background:radial-gradient(circle at 8% 18%,rgba(246,164,95,.23),transparent 25%),
        radial-gradient(circle at 88% 76%,rgba(76,211,192,.2),transparent 28%),
        linear-gradient(135deg,#211643 0%,#342255 48%,#0c5962 100%)
}
.sports-section::before,.sports-section::after {
    content:"";
    position:absolute;
    border:1px solid rgba(255,255,255,.1);
    border-radius:50%;
    pointer-events:none
}
.sports-section::before {
    width:440px;
    height:440px;
    right:-220px;
    top:-190px
}
.sports-section::after {
    width:220px;
    height:220px;
    left:-110px;
    bottom:-90px
}
.sports-shell {
    position:relative;
    z-index:1;
    max-width:1540px;
    margin:auto
}
.sports-heading {
    display:grid;
    grid-template-columns:minmax(430px,.82fr) minmax(540px,1.18fr);
    gap:64px;
    margin-bottom:44px;
    align-items:end
}
.sports-kicker,.sports-guide-label,.sports-details-kicker {
    margin:0 0 10px;
    color:#f2bf6d;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase
}
.sports-heading h2 {
    margin:0;
    font:700 clamp(3rem,5vw,5.4rem)/.96 "Fredoka",sans-serif;
    max-width:760px
}
.sports-introduction {
    padding-left:32px;
    border-left:2px solid rgba(242,191,109,.68)
}
.sports-introduction p {
    margin:0;
    color:#e9e5f2;
    font-size:1.05rem;
    line-height:1.72
}
.sports-introduction p+p {
    margin-top:13px
}
.sports-arena {
    display:grid;
    grid-template-columns:minmax(600px,1.14fr) minmax(480px,.86fr);
    gap:38px;
    align-items:stretch
}
.sports-visual {
    display:flex;
    min-height:520px;
    margin:0;
    padding:24px 28px 28px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:32px;
    overflow:hidden;
    flex-direction:column;
    justify-content:flex-start;
    background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(7,54,71,.18));
    box-shadow:0 24px 55px rgba(8,4,30,.25)
}
.sports-visual img {
    display:block;
    width:108%;
    height:auto;
    max-height:470px;
    margin:0 -4%;
    object-fit:contain;
    filter:drop-shadow(0 22px 24px rgba(8,4,30,.34))
}
.sports-visual figcaption {
    max-width:760px;
    margin:4px auto 0;
    color:#d8f2ef;
    font-size:.93rem;
    line-height:1.55;
    text-align:center
}
.sports-visual-overview {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:24px
}
.sports-visual-overview article {
    padding:20px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:18px;
    background:rgba(8,29,64,.25)
}
.sports-visual-overview h3 {
    margin:0 0 8px;
    color:#f3c477;
    font-size:1rem
}
.sports-visual-overview p {
    margin:0;
    color:#e0e8f1;
    font-size:.91rem;
    line-height:1.58
}
.sports-guide {
    padding:34px 36px;
    border-radius:32px;
    color:#24213a;
    background:linear-gradient(145deg,#fff7eb,#e7f5f0);
    box-shadow:0 24px 55px rgba(8,4,30,.25)
}
.sports-guide-label {
    color:#b35248
}
.sports-guide h3 {
    margin:0;
    font:700 clamp(2rem,3vw,3rem)/1.05 "Fredoka",sans-serif;
    color:#225e60
}
.sports-guide-copy {
    margin:16px 0 25px;
    color:#564e61;
    line-height:1.65
}
.sports-paths {
    display:grid;
    gap:12px
}
.sports-paths article {
    padding:17px 19px;
    border:1px solid rgba(33,94,96,.13);
    border-radius:18px;
    background:rgba(255,255,255,.64)
}
.sports-paths h4 {
    margin:0 0 5px;
    color:#283a4e;
    font-size:1rem
}
.sports-paths p {
    margin:0;
    color:#62576a;
    font-size:.88rem;
    line-height:1.45
}
.sports-market-list {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:20px
}
.sports-market-list span {
    padding:8px 11px;
    border-radius:999px;
    color:#1d5c5e;
    background:#d9efea;
    font-size:.78rem;
    font-weight:900
}
.sports-visible-guide {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-top:28px
}
.sports-visible-guide article {
    padding:24px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:22px;
    background:rgba(255,255,255,.07)
}
.sports-card-kicker {
    margin:0 0 9px;
    color:#ef9c73;
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase
}
.sports-visible-guide h3 {
    margin:0 0 10px;
    color:#f6c977;
    font:700 1.22rem/1.2 "Fredoka",sans-serif
}
.sports-visible-guide article>p:last-child {
    margin:0;
    color:#e1e8f1;
    font-size:.94rem;
    line-height:1.62
}
.sports-more {
    display:flex;
    width:100%;
    margin-top:28px;
    padding:17px 24px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:18px;
    align-items:center;
    justify-content:center;
    gap:10px;
    color:#29203f;
    background:linear-gradient(100deg,#f2c76f,#ef9572);
    cursor:pointer;
    font:900 1rem "Nunito",sans-serif;
    box-shadow:0 14px 30px rgba(8,4,30,.18);
    transition:transform .18s,box-shadow .18s
}
.sports-more:hover,.sports-more:focus-visible {
    transform:translateY(-2px);
    outline:3px solid rgba(255,255,255,.3);
    outline-offset:3px;
    box-shadow:0 18px 36px rgba(8,4,30,.27)
}
.sports-details {
    position:relative;
    margin-top:22px;
    padding:36px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:28px;
    background:rgba(14,39,66,.78);
    box-shadow:0 24px 55px rgba(8,4,30,.24)
}
.sports-details-close {
    position:absolute;
    top:18px;
    right:18px;
    width:40px;
    height:40px;
    border:0;
    border-radius:50%;
    color:#281f3f;
    background:#f2bf6d;
    cursor:pointer;
    font-size:1.55rem
}
.sports-details-intro {
    max-width:920px
}
.sports-details-intro h3 {
    margin:0;
    font:700 clamp(2rem,3vw,3.2rem)/1.05 "Fredoka",sans-serif
}
.sports-details-intro>p:last-child {
    margin:15px 0 0;
    color:#dce5ef;
    line-height:1.68
}
.sports-detail-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin-top:28px
}
.sports-detail-grid article,.sports-bet-types article {
    padding:20px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:18px;
    background:rgba(255,255,255,.06)
}
.sports-detail-grid h4,.sports-bet-types h4 {
    margin:0 0 8px;
    color:#f3c577;
    font-size:1.02rem
}
.sports-detail-grid p,.sports-bet-types p {
    margin:0;
    color:#d9e2ec;
    font-size:.91rem;
    line-height:1.55
}
.sports-bet-types {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin-top:14px
}
.sports-bet-types article {
    background:rgba(58,183,170,.1)
}
.sports-rules-note {
    margin:20px 0 0;
    padding:18px 20px;
    border-left:4px solid #ed9871;
    border-radius:0 14px 14px 0;
    color:#e4ebf3;
    background:rgba(4,23,48,.35);
    line-height:1.6
}
.sports-rules-note strong {
    color:#fff
}
@media(max-width:1100px) {
    .sports-heading {
        grid-template-columns:1fr;
        gap:25px
    }
    .sports-introduction {
        max-width:900px
    }
    .sports-arena {
        grid-template-columns:1fr
    }
    .sports-visual {
        min-height:0
    }
    .sports-visual img {
        max-height:430px
    }
    .sports-visible-guide {
        grid-template-columns:1fr
    }
    .sports-detail-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:680px) {
    .sports-section {
        padding:62px 14px
    }
    .sports-heading {
        margin-bottom:30px
    }
    .sports-heading h2 {
        font-size:2.8rem
    }
    .sports-introduction {
        padding-left:18px
    }
    .sports-introduction p {
        font-size:.97rem
    }
    .sports-arena {
        gap:20px
    }
    .sports-visual {
        padding:14px 12px 18px;
        border-radius:23px
    }
    .sports-visual img {
        width:108%;
        max-height:280px
    }
    .sports-visual-overview {
        grid-template-columns:1fr;
        gap:10px;
        margin-top:18px
    }
    .sports-visual-overview article {
        padding:16px
    }
    .sports-guide {
        padding:24px 18px;
        border-radius:23px
    }
    .sports-guide h3 {
        font-size:2rem
    }
    .sports-paths article {
        padding:15px 14px
    }
    .sports-visible-guide article {
        padding:20px
    }
    .sports-details {
        padding:28px 18px
    }
    .sports-details-close {
        top:12px;
        right:12px
    }
    .sports-detail-grid,.sports-bet-types {
        grid-template-columns:1fr
    }
}
@media(max-width:620px) {
    .live-layout {
        grid-template-columns:minmax(0,1fr);
        width:100%
    }
    .live-content,.live-sidebar {
        width:100%;
        min-width:0;
        box-sizing:border-box
    }
    .live-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        width:100%;
        justify-content:stretch
    }
}
.promotions-section {
    position:relative;
    scroll-margin-top:92px;
    overflow:hidden;
    padding:92px clamp(22px,4vw,68px);
    color:#4b2840;
    background:radial-gradient(circle at 12% 8%,rgba(255,255,255,.88),transparent 28%),
        radial-gradient(circle at 90% 75%,rgba(77,194,179,.2),transparent 26%),
        linear-gradient(145deg,#fff4df 0%,#f9d9cf 47%,#d9efea 100%)
}
.promotions-section::before {
    content:"";
    position:absolute;
    width:520px;
    height:520px;
    right:-250px;
    top:-270px;
    border:70px solid rgba(236,137,104,.12);
    border-radius:50%;
    pointer-events:none
}
.promotions-shell {
    position:relative;
    z-index:1;
    max-width:1540px;
    margin:auto
}
.promotions-heading {
    display:grid;
    grid-template-columns:minmax(430px,.8fr) minmax(560px,1.2fr);
    gap:70px;
    align-items:end;
    margin-bottom:42px
}
.promotions-kicker,.bonus-eyebrow {
    margin:0 0 10px;
    color:#ba554a;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase
}
.promotions-heading h2 {
    max-width:700px;
    margin:0;
    color:#185f60;
    font:700 clamp(3rem,5vw,5.2rem)/.96 "Fredoka",sans-serif
}
.promotions-overview {
    padding-left:30px;
    border-left:2px solid rgba(186,85,74,.5)
}
.promotions-overview p {
    margin:0;
    color:#574959;
    font-size:1.04rem;
    line-height:1.7
}
.promotions-overview p+p {
    margin-top:13px
}
.welcome-bonus {
    display:grid;
    grid-template-columns:minmax(360px,.72fr) minmax(700px,1.28fr);
    gap:24px;
    padding:26px;
    border-radius:32px;
    background:linear-gradient(135deg,#155f62,#173f5b);
    box-shadow:0 24px 55px rgba(69,49,53,.2)
}
.welcome-bonus-summary {
    padding:18px;
    color:#fff
}
.welcome-bonus-summary .bonus-eyebrow {
    color:#f2c16f
}
.welcome-bonus-summary h3 {
    margin:0;
    font:700 clamp(2.1rem,3.2vw,3.35rem)/1.04 "Fredoka",sans-serif
}
.welcome-bonus-summary>p:nth-of-type(2) {
    margin:17px 0 0;
    color:#dff1ed;
    line-height:1.65
}
.bonus-summary-pills {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:22px
}
.bonus-summary-pills span {
    padding:9px 12px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    color:#ffe0a1;
    background:rgba(255,255,255,.08);
    font-size:.8rem;
    font-weight:900
}
.deposit-bonus-grid {
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px
}
.deposit-bonus-card {
    display:flex;
    grid-column:span 2;
    min-height:150px;
    padding:18px;
    border:1px solid rgba(255,255,255,.55);
    border-radius:21px;
    flex-direction:column;
    color:#4b2840;
    background:linear-gradient(150deg,#fffaf0,#f9e1d3);
    box-shadow:0 10px 23px rgba(3,36,49,.16)
}
.deposit-bonus-card.is-featured {
    color:#fff;
    background:linear-gradient(145deg,#d86570,#ad4e87);
    border-color:#f5bd87
}
.deposit-bonus-card p {
    margin:0 0 auto;
    font-size:.8rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.07em
}
.deposit-bonus-card strong {
    margin-top:14px;
    font:700 2.55rem/1 "Fredoka",sans-serif
}
.deposit-bonus-card span {
    margin-top:4px;
    font-size:.87rem;
    font-weight:800
}
.deposit-bonus-card small {
    margin-top:10px;
    color:#b44d46;
    font-weight:900
}
.deposit-bonus-card.is-featured small {
    color:#ffe19c
}
.deposit-bonus-card:nth-child(4) {
    grid-column:2/4
}
.deposit-bonus-card:nth-child(5) {
    grid-column:4/6
}
.bonus-process {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-top:24px
}
.bonus-process article {
    padding:24px;
    border:1px solid rgba(95,64,78,.12);
    border-radius:22px;
    background:rgba(255,250,242,.72);
    box-shadow:0 12px 25px rgba(94,57,64,.08)
}
.bonus-process-label,.recurring-label {
    margin:0 0 8px;
    color:#b9564c;
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase
}
.bonus-process h3,.recurring-rewards h3 {
    margin:0 0 9px;
    color:#185f60;
    font:700 1.25rem/1.2 "Fredoka",sans-serif
}
.bonus-process article>p:last-child,.recurring-rewards article>p:last-child {
    margin:0;
    color:#635463;
    line-height:1.58
}
.recurring-rewards {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:16px
}
.recurring-rewards article {
    position:relative;
    overflow:hidden;
    padding:25px 27px;
    border-radius:22px;
    color:#fff;
    background:linear-gradient(130deg,#632959,#b45266)
}
.recurring-rewards article+article {
    background:linear-gradient(130deg,#16676a,#279387)
}
.recurring-rewards .recurring-label {
    color:#ffd68b
}
.recurring-rewards h3 {
    color:#fff
}
.recurring-rewards article>p:last-child {
    color:#faedf3
}
.recurring-rewards article+article>p:last-child {
    color:#e1f4f0
}
.promotions-more {
    display:flex;
    width:100%;
    margin-top:24px;
    padding:17px 24px;
    border:0;
    border-radius:18px;
    align-items:center;
    justify-content:center;
    gap:10px;
    color:#fff;
    background:linear-gradient(100deg,#bc526b,#7052a7);
    cursor:pointer;
    font:900 1rem "Nunito",sans-serif;
    box-shadow:0 14px 30px rgba(90,46,85,.2);
    transition:transform .18s
}
.promotions-more:hover,.promotions-more:focus-visible {
    transform:translateY(-2px);
    outline:3px solid rgba(112,82,167,.24);
    outline-offset:3px
}
.promotions-details {
    position:relative;
    margin-top:22px;
    padding:34px;
    border-radius:28px;
    color:#fff;
    background:linear-gradient(145deg,#4c2552,#173f5b);
    box-shadow:0 22px 45px rgba(69,49,53,.2)
}
.promotions-details-close {
    position:absolute;
    top:16px;
    right:16px;
    width:40px;
    height:40px;
    border:0;
    border-radius:50%;
    color:#4b2840;
    background:#f4c978;
    cursor:pointer;
    font-size:1.5rem
}
.promotions-details-heading {
    max-width:930px
}
.promotions-details-heading .bonus-eyebrow {
    color:#f4c978
}
.promotions-details-heading h3 {
    margin:0;
    font:700 clamp(2rem,3vw,3rem)/1.05 "Fredoka",sans-serif
}
.promotions-details-heading>p:last-child {
    margin:14px 0 0;
    color:#ede5f0;
    line-height:1.65
}
.contribution-grid {
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
    margin-top:27px
}
.contribution-grid article,.bonus-important-notes article {
    padding:19px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:18px;
    background:rgba(255,255,255,.07)
}
.contribution-grid strong {
    display:block;
    margin-bottom:10px;
    color:#f4c978;
    font:700 1.55rem "Fredoka",sans-serif
}
.contribution-grid h4,.bonus-important-notes h4 {
    margin:0 0 7px
}
.contribution-grid p,.bonus-important-notes p {
    margin:0;
    color:#e1dce8;
    font-size:.88rem;
    line-height:1.5
}
.bonus-important-notes {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-top:12px
}
.bonus-important-notes article {
    background:rgba(48,181,164,.09)
}
.bonus-important-notes h4 {
    color:#8ee0d2
}
.bonus-terms-note {
    margin:18px 0 0;
    padding:17px 19px;
    border-left:4px solid #ef9e72;
    border-radius:0 13px 13px 0;
    color:#f0eaf2;
    background:rgba(7,25,47,.25);
    line-height:1.58
}
@media(max-width:1100px) {
    .promotions-heading {
        grid-template-columns:1fr;
        gap:24px
    }
    .promotions-overview {
        max-width:930px
    }
    .welcome-bonus {
        grid-template-columns:1fr
    }
    .contribution-grid {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
}
@media(max-width:720px) {
    .promotions-section {
        padding:62px 14px
    }
    .promotions-heading h2 {
        font-size:2.8rem
    }
    .promotions-overview {
        padding-left:18px
    }
    .welcome-bonus {
        padding:15px;
        border-radius:24px
    }
    .welcome-bonus-summary {
        padding:12px
    }
    .deposit-bonus-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .deposit-bonus-card {
        grid-column:auto
    }
    .deposit-bonus-card:nth-child(4),.deposit-bonus-card:nth-child(5) {
        grid-column:auto;
        margin-left:0
    }
    .deposit-bonus-card:nth-child(5) {
        grid-column:1/-1;
        width:calc(50% - 6px);
        justify-self:center;
        box-sizing:border-box
    }
    .bonus-process,.recurring-rewards,.contribution-grid,.bonus-important-notes {
        grid-template-columns:1fr
    }
    .promotions-details {
        padding:28px 18px
    }
    .promotions-details-close {
        top:11px;
        right:11px
    }
}
.deposit-bonus-card button {
    display:flex;
    width:100%;
    height:100%;
    padding:0;
    border:0;
    flex-direction:column;
    text-align:left;
    color:inherit;
    background:transparent;
    cursor:pointer;
    font:inherit
}
.deposit-bonus-card button:focus-visible {
    outline:3px solid #f5bd87;
    outline-offset:6px;
    border-radius:10px
}
.deposit-bonus-card em {
    margin-top:13px;
    color:#185f60;
    font-size:.78rem;
    font-style:normal;
    font-weight:900
}
.deposit-bonus-card.is-featured em {
    color:#fff
}
.deposit-bonus-card.is-selected {
    outline:3px solid #f4c978;
    outline-offset:3px;
    transform:translateY(-2px)
}
.deposit-terms {
    position:relative;
    margin-top:20px;
    padding:28px 30px;
    border:1px solid rgba(24,95,96,.18);
    border-radius:26px;
    color:#4b2840;
    background:rgba(255,250,242,.92);
    box-shadow:0 16px 35px rgba(69,49,53,.12)
}
.deposit-terms:focus {
    outline:none
}
.deposit-terms .bonus-eyebrow {
    margin-right:50px
}
.deposit-terms h3 {
    max-width:930px;
    margin:0;
    color:#185f60;
    font:700 clamp(1.65rem,2.6vw,2.55rem)/1.1 "Fredoka",sans-serif
}
.deposit-terms>p:nth-of-type(2) {
    max-width:1050px;
    margin:12px 0 0;
    color:#635463;
    line-height:1.65
}
.deposit-terms-close {
    position:absolute;
    top:16px;
    right:16px;
    width:40px;
    height:40px;
    border:0;
    border-radius:50%;
    color:#4b2840;
    background:#f4c978;
    cursor:pointer;
    font-size:1.5rem
}
.deposit-condition-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-top:22px
}
.deposit-condition-grid article {
    padding:18px;
    border:1px solid rgba(24,95,96,.14);
    border-radius:17px;
    background:#fff
}
.deposit-condition-grid h4 {
    margin:0 0 8px;
    color:#a74749
}
.deposit-condition-grid p {
    margin:0;
    color:#635463;
    font-size:.88rem;
    line-height:1.5
}
.recurring-rewards {
    grid-template-columns:repeat(3,minmax(0,1fr))
}
.recurring-rewards article:nth-child(3) {
    background:linear-gradient(130deg,#244c71,#6172a5)
}
@media(max-width:1100px) {
    .deposit-condition-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .recurring-rewards {
        grid-template-columns:1fr
    }
}
@media(max-width:720px) {
    .deposit-condition-grid {
        grid-template-columns:1fr
    }
    .deposit-terms {
        padding:25px 18px
    }
}
.welcome-bonus {
    grid-template-columns:minmax(300px,.6fr) minmax(760px,1.4fr);
    align-items:center
}
.deposit-bonus-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px
}
.deposit-bonus-card,.deposit-bonus-card:nth-child(4),.deposit-bonus-card:nth-child(5) {
    grid-column:auto;
    min-height:0;
    margin:0;
    padding:0;
    border-color:rgba(244,201,120,.58);
    background:linear-gradient(140deg,#fff9ee,#f7ddce);
    box-shadow:0 10px 22px rgba(3,36,49,.14)
}
.deposit-bonus-card:nth-child(5) {
    grid-column:1/-1;
    width:calc(50% - 7px);
    justify-self:center
}
.deposit-bonus-card.is-featured {
    color:#4b2840;
    background:linear-gradient(140deg,#fff1d4,#f4b49d)
}
.deposit-bonus-card button {
    padding:14px 16px 13px
}
.deposit-bonus-card p {
    margin:0;
    color:#a84c49;
    font-size:.72rem
}
.deposit-reward {
    position:relative;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    min-height:112px;
    margin:5px 0 8px;
    align-items:start
}
.deposit-reward>span:not(.bonus-chest) {
    position:relative;
    z-index:2;
    display:flex;
    min-width:0;
    padding-top:12px;
    align-items:center;
    flex-direction:column;
    text-align:center
}
.deposit-reward>span:not(.bonus-chest):first-child {
    align-items:flex-start;
    text-align:left
}
.deposit-reward>span:not(.bonus-chest):nth-child(3) {
    align-items:flex-end;
    text-align:right
}
.deposit-reward strong {
    margin:0;
    color:#5a274c;
    font:700 clamp(1rem,1.45vw,1.45rem)/1 "Fredoka",sans-serif;
    white-space:nowrap
}
.deposit-reward small {
    margin:4px 0 0;
    color:#b44d46;
    font-size:.65rem;
    text-transform:uppercase;
    letter-spacing:.05em
}
.bonus-chest {
    position:absolute;
    z-index:1;
    left:50%;
    bottom:-2px;
    width:104px;
    transform:translateX(-50%);
    filter:drop-shadow(0 8px 8px rgba(2,35,42,.2))
}
.bonus-chest img {
    display:block;
    width:100%;
    height:auto
}
.bonus-chest b {
    position:absolute;
    left:50%;
    top:52%;
    color:#174f56;
    font:900 1.05rem/1 "Nunito",sans-serif;
    transform:translate(-50%,-50%)
}
.deposit-bonus-card em {
    display:flex;
    margin:0;
    padding:10px 12px;
    border-radius:11px;
    justify-content:center;
    gap:8px;
    color:#fff;
    background:#17686a;
    font-size:.72rem
}
.deposit-bonus-card em i {
    font-style:normal;
    transition:transform .18s
}
.deposit-bonus-card:hover em i,.deposit-bonus-card:focus-within em i {
    transform:translateX(3px)
}
.deposit-bonus-card.is-featured em {
    color:#fff;
    background:#7f3566
}
.deposit-bonus-card.is-selected {
    transform:none
}
@media(max-width:1100px) {
    .welcome-bonus {
        grid-template-columns:1fr
    }
    .deposit-bonus-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:720px) {
    .deposit-bonus-grid {
        grid-template-columns:1fr
    }
    .deposit-bonus-card,.deposit-bonus-card:nth-child(5) {
        grid-column:auto;
        width:100%
    }
    .deposit-reward {
        min-height:106px
    }
    .bonus-chest {
        width:96px
    }
    .deposit-reward strong {
        font-size:1.05rem
    }
}
.bonus-chest b {
    top:52%
}
.deposit-reward {
    margin-top:0
}
.deposit-reward>span:not(.bonus-chest) {
    padding-top:0
}
.loyalty-section {
    position:relative;
    scroll-margin-top:92px;
    overflow:hidden;
    padding:96px clamp(22px,4vw,68px);
    color:#f8f3eb;
    background:radial-gradient(circle at 86% 12%,rgba(242,190,101,.22),transparent 25%),
        radial-gradient(circle at 10% 86%,rgba(50,190,177,.18),transparent 28%),
        linear-gradient(135deg,#3c1f4b 0%,#123f56 58%,#125f61 100%)
}
.loyalty-section::before {
    content:"";
    position:absolute;
    inset:34px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:42px;
    pointer-events:none
}
.loyalty-shell {
    position:relative;
    z-index:1;
    max-width:1540px;
    margin:auto
}
.loyalty-heading {
    display:grid;
    grid-template-columns:minmax(430px,.86fr) minmax(570px,1.14fr);
    column-gap:70px;
    align-items:end
}
.loyalty-kicker,.loyalty-panel-label {
    margin:0 0 10px;
    color:#f4c469;
    font-size:.82rem;
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase
}
.loyalty-heading h2 {
    grid-row:2/4;
    margin:0;
    font:700 clamp(3rem,5vw,5.3rem)/.96 "Fredoka",sans-serif
}
.loyalty-heading>p:last-child {
    grid-column:2;
    grid-row:2/4;
    margin:0;
    padding-left:30px;
    border-left:2px solid rgba(244,196,105,.55);
    color:#dce9ec;
    font-size:1.04rem;
    line-height:1.72
}
.loyalty-dashboard {
    display:grid;
    grid-template-columns:minmax(720px,1.35fr) minmax(380px,.65fr);
    gap:22px;
    margin-top:44px
}
.loyalty-route {
    position:relative;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
    padding:25px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:32px;
    background:rgba(7,26,48,.32);
    box-shadow:0 25px 55px rgba(5,14,35,.26)
}
.loyalty-route::before {
    content:"";
    position:absolute;
    left:8%;
    right:8%;
    top:50%;
    height:2px;
    background:linear-gradient(90deg,#f2bd67,#ef8d76,#58c9b8);
    opacity:.65
}
.loyalty-exchange {
    padding:30px;
    border-radius:32px;
    color:#4c2943;
    background:linear-gradient(145deg,#fff7e8,#f5d7c9);
    box-shadow:0 25px 55px rgba(5,14,35,.25)
}
.loyalty-exchange .loyalty-panel-label {
    color:#ad514b
}
.loyalty-exchange h3 {
    margin:0;
    color:#195f61;
    font:700 clamp(2rem,3vw,3rem)/1.05 "Fredoka",sans-serif
}
.loyalty-comparison {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin:25px 0 20px
}
.loyalty-comparison article {
    padding:17px;
    border:1px solid rgba(24,95,97,.13);
    border-radius:18px;
    background:rgba(255,255,255,.58)
}
.loyalty-comparison small,.loyalty-comparison span {
    display:block
}
.loyalty-comparison small {
    color:#aa504b;
    font-weight:900;
    text-transform:uppercase
}
.loyalty-comparison strong {
    display:block;
    margin:8px 0;
    color:#592a50;
    font:700 1.7rem "Fredoka",sans-serif
}
.loyalty-comparison span {
    color:#655666;
    font-size:.75rem;
    line-height:1.35
}
.loyalty-exchange>p:last-child {
    margin:0;
    color:#625466;
    line-height:1.62
}
.loyalty-earning {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:15px;
    margin-top:22px
}
.loyalty-earning article {
    padding:24px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:22px;
    background:rgba(255,255,255,.075)
}
.loyalty-earning h3 {
    margin:0 0 9px;
    color:#f4c469;
    font:700 1.22rem "Fredoka",sans-serif
}
.loyalty-earning p {
    margin:0;
    color:#dbe6eb;
    line-height:1.58
}
.loyalty-more {
    display:flex;
    width:100%;
    margin-top:22px;
    padding:17px 24px;
    border:0;
    border-radius:18px;
    align-items:center;
    justify-content:center;
    gap:10px;
    color:#34213d;
    background:linear-gradient(100deg,#f4c469,#ef9374);
    cursor:pointer;
    font:900 1rem "Nunito",sans-serif
}
.loyalty-more:hover,.loyalty-more:focus-visible {
    outline:3px solid rgba(255,255,255,.25);
    outline-offset:3px;
    transform:translateY(-2px)
}
.loyalty-details {
    position:relative;
    margin-top:20px;
    padding:34px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:28px;
    background:rgba(7,24,45,.52)
}
.loyalty-details-close {
    position:absolute;
    top:16px;
    right:16px;
    width:40px;
    height:40px;
    border:0;
    border-radius:50%;
    color:#36223e;
    background:#f4c469;
    cursor:pointer;
    font-size:1.5rem
}
.loyalty-details h3 {
    max-width:850px;
    margin:0;
    font:700 clamp(2rem,3vw,3rem)/1.06 "Fredoka",sans-serif
}
.loyalty-detail-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:13px;
    margin-top:25px
}
.loyalty-detail-grid article {
    padding:20px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:18px;
    background:rgba(255,255,255,.06)
}
.loyalty-detail-grid h4 {
    margin:0 0 8px;
    color:#7ee0d0
}
.loyalty-detail-grid p {
    margin:0;
    color:#dce6ea;
    font-size:.89rem;
    line-height:1.55
}
.loyalty-note {
    margin:17px 0 0;
    padding:17px 19px;
    border-left:4px solid #ef9374;
    border-radius:0 14px 14px 0;
    color:#e6edf0;
    background:rgba(0,0,0,.16);
    line-height:1.58
}
@media(max-width:1180px) {
    .loyalty-heading {
        grid-template-columns:1fr;
        gap:22px
    }
    .loyalty-heading h2,.loyalty-heading>p:last-child {
        grid-column:auto;
        grid-row:auto
    }
    .loyalty-dashboard {
        grid-template-columns:1fr
    }
    .loyalty-route {
        grid-template-columns:repeat(5,minmax(150px,1fr));
        overflow-x:auto
    }
    .loyalty-detail-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:720px) {
    .loyalty-section {
        padding:66px 14px
    }
    .loyalty-section::before {
        inset:9px;
        border-radius:26px
    }
    .loyalty-heading h2 {
        font-size:2.75rem
    }
    .loyalty-heading>p:last-child {
        padding-left:18px
    }
    .loyalty-dashboard {
        margin-top:30px
    }
    .loyalty-route {
        padding:16px
    }
    .loyalty-exchange {
        padding:24px 18px
    }
    .loyalty-comparison,.loyalty-earning,.loyalty-detail-grid {
        grid-template-columns:1fr
    }
    .loyalty-details {
        padding:28px 18px
    }
}
.loyalty-dashboard {
    grid-template-columns:minmax(820px,1.48fr) minmax(390px,.52fr);
    align-items:stretch
}
.loyalty-route {
    align-items:stretch
}
.loyalty-route::before {
    top:54%
}
.loyalty-rate-table {
    display:grid;
    margin:0 0 18px;
    border:1px solid rgba(24,95,97,.14);
    border-radius:16px;
    overflow:hidden;
    background:rgba(255,255,255,.42)
}
.loyalty-rate-table>div {
    display:grid;
    padding:7px 11px;
    grid-template-columns:1.1fr 1fr 1fr;
    gap:8px;
    color:#625466;
    font-size:.72rem
}
.loyalty-rate-table>div:first-child {
    color:#195f61;
    background:rgba(24,95,97,.1);
    font-size:.68rem
}
.loyalty-rate-table>div+div {
    border-top:1px solid rgba(24,95,97,.1)
}
.loyalty-rate-table span:not(:first-child),.loyalty-rate-table b:not(:first-child) {
    text-align:right
}
.loyalty-exchange>p:last-child {
    font-size:.88rem;
    line-height:1.5
}
.loyalty-detail-grid {
    grid-template-columns:repeat(4,minmax(0,1fr))
}
@media(max-width:1380px) {
    .loyalty-dashboard {
        grid-template-columns:1fr
    }
    .loyalty-route {
        grid-template-columns:repeat(5,minmax(185px,1fr));
        overflow-x:auto
    }
    .loyalty-exchange {
        max-width:none
    }
    .loyalty-detail-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:720px) {
    .loyalty-route {
        grid-template-columns:1fr;
        overflow:visible
    }
    .loyalty-route::before {
        display:none
    }
    .loyalty-rate-table>div {
        font-size:.66rem
    }
    .loyalty-detail-grid {
        grid-template-columns:1fr
    }
}
.loyalty-dashboard {
    align-items:start
}
.loyalty-route {
    align-items:start
}
.loyalty-route {
    padding:18px;
    gap:10px
}
.loyalty-section {
    padding:94px clamp(22px,5vw,86px);
    color:#523247;
    background:radial-gradient(circle at 92% 8%,rgba(88,201,184,.2),transparent 24%),
        radial-gradient(circle at 8% 85%,rgba(239,147,116,.22),transparent 27%),
        linear-gradient(135deg,#fff8eb 0%,#f9e4d9 48%,#e7f5ee 100%)
}
.loyalty-section::before {
    inset:28px;
    border-color:rgba(24,104,106,.13)
}
.loyalty-heading {
    grid-template-columns:minmax(460px,.8fr) minmax(560px,1.2fr);
    align-items:center
}
.loyalty-kicker {
    color:#b5524c
}
.loyalty-heading h2 {
    color:#17686a;
    text-shadow:none
}
.loyalty-heading>p:last-child {
    border-left-color:#ef9374;
    color:#655566
}
.loyalty-dashboard {
    display:block;
    margin-top:42px
}
.loyalty-route {
    position:relative;
    display:grid;
    padding:34px 24px 22px;
    border:0;
    border-radius:30px;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:0;
    align-items:start;
    background:rgba(255,255,255,.64);
    box-shadow:0 24px 55px rgba(53,59,70,.11)
}
.loyalty-route::before {
    left:8%;
    right:8%;
    top:55px;
    height:4px;
    opacity:1;
    background:linear-gradient(90deg,#ef9374,#f4c469 46%,#58c9b8)
}
.loyalty-exchange {
    display:grid;
    margin-top:20px;
    padding:27px 30px;
    border:0;
    border-radius:28px;
    grid-template-columns:minmax(270px,.72fr) minmax(300px,.85fr) minmax(390px,1.15fr);
    grid-template-rows:auto auto 1fr;
    column-gap:28px;
    align-items:start;
    color:#f8f3eb;
    background:linear-gradient(115deg,#17686a,#164a60 62%,#3c2854);
    box-shadow:0 22px 50px rgba(35,59,66,.18)
}
.loyalty-exchange .loyalty-panel-label {
    grid-column:1;
    grid-row:1;
    margin:0 0 8px;
    color:#f4c469
}
.loyalty-exchange h3 {
    grid-column:1;
    grid-row:2;
    margin:0;
    color:#fff;
    font-size:clamp(2rem,2.6vw,3.2rem)
}
.loyalty-comparison {
    grid-column:2;
    grid-row:1/4;
    margin:0;
    align-self:stretch
}
.loyalty-comparison article {
    display:flex;
    padding:18px;
    border-color:rgba(255,255,255,.15);
    flex-direction:column;
    justify-content:center;
    background:rgba(255,255,255,.1)
}
.loyalty-comparison small {
    color:#f4c469
}
.loyalty-comparison strong {
    color:#fff
}
.loyalty-comparison span {
    color:#dce9e8
}
.loyalty-rate-table {
    grid-column:3;
    grid-row:1/3;
    margin:0;
    background:rgba(255,255,255,.94)
}
.loyalty-exchange>p:last-child {
    grid-column:3;
    grid-row:3;
    margin:14px 0 0;
    color:#dce9e8;
    font-size:.8rem
}
.loyalty-earning {
    margin-top:20px
}
.loyalty-earning article {
    border:0;
    background:#fffaf1;
    box-shadow:0 12px 28px rgba(69,52,65,.09)
}
.loyalty-earning article:nth-child(2) {
    background:#e5f3ed
}
.loyalty-earning article:nth-child(3) {
    background:#f7ddd5
}
.loyalty-earning h3 {
    color:#17686a
}
.loyalty-earning p {
    color:#655566
}
.loyalty-more {
    color:#fff;
    background:linear-gradient(100deg,#b5524c,#7d3567)
}
.loyalty-details {
    border:0;
    color:#fff;
    background:linear-gradient(135deg,#21415b,#3c2854)
}
@media(max-width:1180px) {
    .loyalty-heading {
        grid-template-columns:1fr
    }
    .loyalty-route {
        grid-template-columns:repeat(5,minmax(210px,1fr));
        overflow-x:auto
    }
    .loyalty-exchange {
        grid-template-columns:1fr 1fr
    }
    .loyalty-exchange .loyalty-panel-label,.loyalty-exchange h3 {
        grid-column:1
    }
    .loyalty-comparison {
        grid-column:2;
        grid-row:1/4
    }
    .loyalty-rate-table {
        grid-column:1/-1;
        grid-row:auto;
        margin-top:22px
    }
    .loyalty-exchange>p:last-child {
        grid-column:1/-1;
        grid-row:auto
    }
}
@media(max-width:720px) {
    .loyalty-section {
        padding:66px 14px
    }
    .loyalty-route {
        display:grid;
        padding:22px 16px;
        grid-template-columns:1fr;
        gap:12px;
        overflow:visible
    }
    .loyalty-route::before {
        display:none
    }
    .loyalty-exchange {
        display:block;
        padding:25px 18px
    }
    .loyalty-comparison,.loyalty-rate-table,.loyalty-exchange>p:last-child {
        margin-top:20px
    }
}
.loyalty-comparison strong {
    font-size:2.2rem
}
.loyalty-comparison span {
    font-size:.86rem
}
.loyalty-rate-table>div {
    padding:10px 13px;
    font-size:.86rem
}
.loyalty-rate-table>div:first-child {
    font-size:.78rem
}
@media(max-width:720px) {
    .loyalty-rate-table>div {
        padding:9px 7px;
        font-size:.74rem
    }
}
.promotions-kicker,.loyalty-kicker {
    display:inline-flex;
    width:max-content;
    padding:8px 13px;
    border-radius:999px;
    align-items:center;
    gap:8px;
    font-size:.9rem;
    letter-spacing:.1em
}
.promotions-kicker {
    color:#fff;
    background:#b5524c
}
.loyalty-kicker {
    color:#fff;
    background:#17686a
}
@media(max-width:720px) {
    .promotions-kicker,.loyalty-kicker {
        font-size:.76rem
    }
}
.loyalty-route {
    padding:30px 24px 20px;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px
}
.loyalty-route::before {
    top:50px
}
.loyalty-step {
    position:relative;
    z-index:1;
    display:flex;
    min-width:0;
    padding:45px 12px 14px;
    border:0;
    border-radius:16px;
    align-items:flex-start;
    flex-direction:column;
    text-align:left;
    color:#60465b;
    background:transparent;
    cursor:pointer;
    font-family:"Nunito",sans-serif
}
.loyalty-step::before {
    content:"";
    position:absolute;
    top:4px;
    left:50%;
    width:27px;
    height:27px;
    border:7px solid #fff;
    border-radius:50%;
    transform:translateX(-50%);
    background:#ef9374;
    box-shadow:0 3px 12px rgba(75,39,63,.18)
}
.loyalty-step:nth-child(2)::before {
    background:#eeaa68
}
.loyalty-step:nth-child(3)::before {
    background:#f4c469
}
.loyalty-step:nth-child(4)::before {
    background:#79cbb9
}
.loyalty-step:nth-child(5)::before {
    background:#17686a
}
.loyalty-step span {
    color:#b5524c;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase
}
.loyalty-step strong {
    margin:5px 0 10px;
    color:#17686a;
    font-size:1.05rem;
    line-height:1.2
}
.loyalty-step b {
    padding:6px 10px;
    border-radius:999px;
    color:#653053;
    background:#f5e7dd;
    font-size:.95rem
}
.loyalty-step:hover,.loyalty-step:focus-visible {
    outline:2px solid #ef9374;
    outline-offset:2px;
    background:#fff
}
.loyalty-step.is-current {
    background:#fff;
    box-shadow:0 10px 24px rgba(69,52,65,.1)
}
.loyalty-step.is-current b {
    color:#fff;
    background:#b5524c
}
.loyalty-stage-detail {
    display:grid;
    margin-top:18px;
    padding:30px;
    border-radius:28px;
    grid-template-columns:minmax(280px,.7fr) minmax(680px,1.3fr);
    gap:28px;
    color:#fff;
    background:linear-gradient(115deg,#17686a,#164a60 62%,#3c2854);
    box-shadow:0 20px 45px rgba(35,59,66,.16)
}
.loyalty-stage-detail header p {
    margin:0 0 10px;
    color:#f4c469;
    font:900 .82rem/1.3 "Nunito",sans-serif;
    letter-spacing:.08em;
    text-transform:uppercase
}
.loyalty-stage-detail header h3 {
    margin:0;
    color:#fff;
    font:800 clamp(1.8rem,2.6vw,3rem)/1.08 "Nunito",sans-serif
}
.loyalty-stage-actions {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px
}
.loyalty-stage-actions article {
    padding:18px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:18px;
    background:rgba(255,255,255,.09)
}
.loyalty-stage-actions span {
    display:block;
    margin-bottom:8px;
    color:#8ee2d4;
    font:900 .72rem/1.2 "Nunito",sans-serif;
    letter-spacing:.06em;
    text-transform:uppercase
}
.loyalty-stage-actions strong {
    display:block;
    margin-bottom:8px;
    color:#fff;
    font:900 1.35rem/1.16 "Nunito",sans-serif
}
.loyalty-stage-actions p {
    margin:0;
    color:#dce9e8;
    font:600 .84rem/1.45 "Nunito",sans-serif
}
.loyalty-exchange {
    margin-top:18px
}
.loyalty-stage-detail+ .loyalty-exchange {
    margin-top:18px
}
@media(max-width:1180px) {
    .loyalty-route {
        grid-template-columns:repeat(5,minmax(180px,1fr));
        overflow-x:auto
    }
    .loyalty-stage-detail {
        grid-template-columns:1fr
    }
    .loyalty-stage-actions {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:720px) {
    .loyalty-route {
        grid-template-columns:1fr;
        gap:8px;
        padding:16px
    }
    .loyalty-step {
        padding:15px 14px 15px 54px
    }
    .loyalty-step::before {
        top:20px;
        left:15px;
        transform:none
    }
    .loyalty-step strong {
        margin:3px 0 7px
    }
    .loyalty-stage-detail {
        padding:22px 17px
    }
    .loyalty-stage-actions {
        grid-template-columns:1fr
    }
    .loyalty-stage-actions strong {
        font-size:1.22rem
    }
}
.security-section {
    position:relative;
    scroll-margin-top:92px;
    padding:96px clamp(22px,5vw,86px);
    overflow:hidden;
    color:#203448;
    background:linear-gradient(135deg,#dff3ef 0%,#fff8e9 48%,#f6d9d2 100%)
}
.security-section::before {
    content:"";
    position:absolute;
    right:-90px;
    top:40px;
    width:360px;
    height:360px;
    border:70px solid rgba(23,104,106,.07);
    border-radius:50%
}
.security-shell {
    position:relative;
    z-index:1;
    max-width:1540px;
    margin:auto
}
.security-heading {
    display:grid;
    grid-template-columns:minmax(480px,.8fr) minmax(570px,1.2fr);
    gap:70px;
    align-items:end
}
.security-kicker {
    display:inline-flex;
    margin:0 0 14px;
    padding:8px 13px;
    border-radius:999px;
    color:#fff;
    background:#17686a;
    font-size:.84rem;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase
}
.security-heading h2 {
    margin:0;
    color:#382541;
    font:800 clamp(3rem,5vw,5.4rem)/.96 "Fredoka",sans-serif
}
.security-heading>div:last-child {
    padding-left:28px;
    border-left:3px solid #ef9374
}
.security-heading>div:last-child p {
    margin:0;
    color:#5d5662;
    font-size:1rem;
    line-height:1.7
}
.security-heading>div:last-child p+p {
    margin-top:12px
}
.security-console {
    display:grid;
    margin-top:42px;
    grid-template-columns:minmax(310px,.56fr) minmax(740px,1.44fr);
    border-radius:34px;
    overflow:hidden;
    box-shadow:0 25px 60px rgba(44,60,67,.14)
}
.security-status {
    padding:38px;
    color:#fff;
    background:linear-gradient(155deg,#3c2854,#173f58)
}
.security-shield {
    display:grid;
    width:94px;
    height:108px;
    margin-bottom:25px;
    place-items:center;
    clip-path:polygon(50% 0,95% 16%,88% 72%,50% 100%,12% 72%,5% 16%);
    background:linear-gradient(145deg,#f4c469,#ef9374)
}
.security-shield span {
    font:900 2.8rem "Nunito",sans-serif
}
.security-status>p {
    margin:0;
    color:#7ee0d0;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em
}
.security-status h3 {
    margin:9px 0 22px;
    font:800 2.25rem/1.05 "Fredoka",sans-serif
}
.security-status ul {
    display:grid;
    margin:0;
    padding:0;
    gap:13px;
    list-style:none
}
.security-status li {
    position:relative;
    padding-left:24px;
    color:#dce9ec;
    line-height:1.45
}
.security-status li::before {
    content:"✓";
    position:absolute;
    left:0;
    color:#f4c469;
    font-weight:900
}
.security-paths {
    display:grid;
    padding:24px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    background:rgba(255,255,255,.74)
}
.security-paths article {
    padding:23px;
    border:1px solid rgba(23,104,106,.13);
    border-radius:22px;
    background:#fff
}
.security-paths span {
    color:#b5524c;
    font-size:.7rem;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase
}
.security-paths h3 {
    margin:8px 0 12px;
    color:#17686a;
    font:800 1.35rem/1.15 "Nunito",sans-serif
}
.security-paths p {
    margin:0;
    color:#625866;
    font-size:.88rem;
    line-height:1.55
}
.security-paths strong {
    display:block;
    margin:20px 0 7px;
    padding-top:15px;
    border-top:1px solid #e3e7e5;
    color:#382541;
    font-size:1rem
}
.security-response {
    display:grid;
    margin-top:20px;
    padding:28px;
    border-radius:28px;
    grid-template-columns:minmax(280px,.6fr) minmax(720px,1.4fr);
    gap:25px;
    color:#fff;
    background:#17686a
}
.security-response header p {
    margin:0;
    color:#f4c469;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em
}
.security-response header h3 {
    margin:8px 0 0;
    font:800 2.35rem/1.05 "Fredoka",sans-serif
}
.security-response>div {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px
}
.security-response article {
    padding:17px;
    border-radius:17px;
    background:rgba(255,255,255,.1)
}
.security-response b {
    display:block;
    margin-bottom:7px;
    color:#fff;
    font-size:1.02rem
}
.security-response article p {
    margin:0;
    color:#dce9e8;
    font-size:.8rem;
    line-height:1.45
}
.security-more {
    display:flex;
    width:100%;
    margin-top:20px;
    padding:17px 24px;
    border:0;
    border-radius:17px;
    align-items:center;
    justify-content:center;
    gap:10px;
    color:#fff;
    background:linear-gradient(100deg,#b5524c,#7d3567);
    cursor:pointer;
    font:900 1rem "Nunito",sans-serif
}
.security-more:hover,.security-more:focus-visible {
    outline:3px solid rgba(23,104,106,.22);
    outline-offset:3px
}
.security-details {
    position:relative;
    margin-top:18px;
    padding:32px;
    border-radius:28px;
    color:#fff;
    background:linear-gradient(145deg,#203b55,#3c2854)
}
.security-details-close {
    position:absolute;
    top:16px;
    right:16px;
    width:40px;
    height:40px;
    border:0;
    border-radius:50%;
    color:#382541;
    background:#f4c469;
    cursor:pointer;
    font-size:1.5rem
}
.security-details h3 {
    margin:0 0 22px;
    font:800 2.4rem "Fredoka",sans-serif
}
.security-details>div {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px
}
.security-details article {
    padding:20px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:18px;
    background:rgba(255,255,255,.07)
}
.security-details h4 {
    margin:0 0 8px;
    color:#7ee0d0
}
.security-details article p {
    margin:0;
    color:#dce6ea;
    font-size:.88rem;
    line-height:1.55
}
.security-note {
    margin:18px 0 0;
    padding:16px 18px;
    border-left:4px solid #ef9374;
    background:rgba(0,0,0,.15);
    line-height:1.55
}
@media(max-width:1180px) {
    .security-heading {
        grid-template-columns:1fr;
        gap:25px
    }
    .security-console,.security-response {
        grid-template-columns:1fr
    }
    .security-paths {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
    .security-details>div {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:720px) {
    .security-section {
        padding:66px 14px
    }
    .security-heading h2 {
        font-size:2.8rem
    }
    .security-heading>div:last-child {
        padding-left:17px
    }
    .security-status {
        padding:28px 22px
    }
    .security-paths {
        padding:14px;
        grid-template-columns:1fr
    }
    .security-response {
        padding:22px 16px
    }
    .security-response>div,.security-details>div {
        grid-template-columns:1fr
    }
    .security-details {
        padding:28px 17px
    }
}
.payments-section {
    scroll-margin-top:92px;
    padding:96px clamp(22px,5vw,86px);
    color:#f8f4ec;
    background:radial-gradient(circle at 12% 18%,rgba(244,196,105,.14),transparent 25%),
        radial-gradient(circle at 90% 82%,rgba(88,201,184,.13),transparent 25%),
        linear-gradient(135deg,#221d42,#123f56 60%,#0b6667)
}
.payments-shell {
    max-width:1540px;
    margin:auto
}
.payments-heading {
    display:grid;
    grid-template-columns:minmax(500px,.85fr) minmax(580px,1.15fr);
    gap:70px;
    align-items:end
}
.payments-kicker {
    display:inline-flex;
    margin:0 0 15px;
    padding:8px 13px;
    border:1px solid rgba(244,196,105,.55);
    border-radius:999px;
    color:#f4c469;
    background:rgba(255,255,255,.05);
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase
}
.payments-heading h2 {
    max-width:720px;
    margin:0;
    color:#fff;
    font:800 clamp(3rem,5vw,5.35rem)/.96 "Fredoka",sans-serif
}
.payments-heading>div:last-child {
    padding-left:28px;
    border-left:3px solid #ef9374
}
.payments-heading>div:last-child p {
    margin:0;
    color:#d9e7e7;
    font-size:1rem;
    line-height:1.7
}
.payments-heading>div:last-child p+p {
    margin-top:12px
}
.payments-switch {
    display:grid;
    width:min(620px,100%);
    margin:42px auto 0;
    padding:7px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:999px;
    grid-template-columns:1fr 1fr;
    background:rgba(5,29,43,.38)
}
.payment-tab {
    padding:15px 24px;
    border:0;
    border-radius:999px;
    color:#cde2e2;
    background:transparent;
    cursor:pointer;
    font:900 1.05rem "Nunito",sans-serif
}
.payment-tab.is-active {
    color:#382541;
    background:linear-gradient(90deg,#f4c469,#ef9374);
    box-shadow:0 8px 22px rgba(0,0,0,.18)
}
.payment-tab:focus-visible {
    outline:3px solid #fff;
    outline-offset:3px
}
.payment-panel {
    display:grid;
    margin-top:22px;
    padding:28px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:32px;
    grid-template-columns:minmax(270px,.52fr) minmax(460px,1.15fr) minmax(360px,.85fr);
    gap:18px;
    background:rgba(255,255,255,.07);
    box-shadow:0 24px 55px rgba(2,17,31,.2)
}
.payment-panel[hidden] {
    display:none
}
.withdrawal-methods {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px
}
@media(max-width:1250px) {
    .payments-heading {
        grid-template-columns:1fr;
        gap:25px
    }
    .payment-panel {
        grid-template-columns:1fr 1fr
    }
    .withdrawal-methods {
        grid-column:1/-1
    }
}
@media(max-width:760px) {
    .payments-section {
        padding:66px 14px
    }
    .payments-heading h2 {
        font-size:2.8rem
    }
    .payments-heading>div:last-child {
        padding-left:17px
    }
    .payments-switch {
        margin-top:30px
    }
    .payment-tab {
        padding:13px 10px
    }
    .payment-panel {
        padding:14px;
        grid-template-columns:1fr
    }
    .withdrawal-methods {
        grid-column:auto;
        grid-template-columns:1fr
    }
}
.payments-section {
    padding:100px clamp(22px,5vw,86px);
    color:#4d4052;
    background:radial-gradient(circle at 4% 8%,rgba(239,147,116,.23),transparent 28%),
        radial-gradient(circle at 95% 92%,rgba(88,201,184,.25),transparent 27%),
        linear-gradient(135deg,#fff8ed,#f8e5db 53%,#e5f4ef)
}
.payments-heading {
    grid-template-columns:minmax(480px,.78fr) minmax(600px,1.22fr)
}
.payments-kicker {
    border:0;
    color:#fff;
    background:#b5524c
}
.payments-heading h2 {
    color:#17686a;
    text-shadow:none
}
.payments-heading>div:last-child {
    border-left-color:#ef9374
}
.payments-heading>div:last-child p {
    color:#655566
}
.payments-workspace {
    margin-top:44px;
    padding:18px;
    border:1px solid rgba(23,104,106,.13);
    border-radius:36px;
    background:rgba(255,255,255,.6);
    box-shadow:0 25px 65px rgba(69,52,65,.13)
}
.payments-switch {
    width:100%;
    margin:0;
    padding:0;
    border:0;
    border-radius:24px 24px 0 0;
    gap:10px;
    background:transparent
}
.payment-tab {
    display:flex;
    padding:19px 28px;
    border:1px solid rgba(23,104,106,.13);
    border-radius:20px;
    align-items:center;
    justify-content:space-between;
    color:#17686a;
    background:#edf7f3;
    font-size:1.35rem;
    text-align:left
}
.payment-tab span {
    color:#786476;
    font-size:.72rem;
    letter-spacing:.08em;
    text-transform:uppercase
}
.payment-tab.is-active {
    color:#fff;
    background:linear-gradient(105deg,#17686a,#164a60);
    box-shadow:none
}
.payment-tab.is-active span {
    color:#f4c469
}
.payment-panel {
    display:grid;
    margin-top:12px;
    padding:34px;
    border:0;
    border-radius:26px;
    grid-template-columns:minmax(290px,.58fr) minmax(600px,1.25fr) minmax(310px,.62fr);
    gap:28px;
    align-items:stretch;
    background:linear-gradient(135deg,#262342,#173f58);
    box-shadow:none
}
.payment-panel-heading {
    padding:16px 8px
}
.payment-panel-heading>p {
    margin:0 0 10px;
    color:#f4c469;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase
}
.payment-panel-heading h3 {
    margin:0 0 18px;
    color:#fff;
    font:800 clamp(2rem,3vw,3.25rem)/1.03 "Fredoka",sans-serif
}
.payment-panel-heading span {
    display:block;
    color:#dce8e8;
    font-size:.98rem;
    line-height:1.65
}
.withdrawal-methods {
    display:grid;
    grid-template-columns:1fr;
    gap:10px
}
.payment-current-note {
    display:grid;
    margin-top:12px;
    padding:19px 24px;
    border:1px solid rgba(23,104,106,.14);
    border-radius:20px;
    grid-template-columns:44px 1fr;
    gap:15px;
    align-items:center;
    color:#655566;
    background:#fff
}
.payment-current-note>span {
    display:grid;
    width:42px;
    height:42px;
    border-radius:50%;
    place-items:center;
    color:#382541;
    background:#f4c469;
    font:900 1.2rem "Nunito",sans-serif
}
.payment-current-note strong {
    color:#17686a;
    font-size:1rem
}
.payment-current-note p {
    margin:3px 0 0;
    font-size:.87rem;
    line-height:1.5
}
@media(max-width:1250px) {
    .payments-heading {
        grid-template-columns:1fr
    }
    .payment-panel {
        grid-template-columns:1fr 1fr
    }
    .payment-panel-heading {
        grid-column:1/-1
    }
    .withdrawal-methods {
        grid-column:auto
    }
}
@media(max-width:760px) {
    .payments-section {
        padding:66px 14px
    }
    .payments-workspace {
        padding:9px;
        border-radius:25px
    }
    .payment-tab {
        padding:14px 12px;
        flex-direction:column;
        gap:4px;
        align-items:flex-start;
        font-size:1rem
    }
    .payment-tab span {
        font-size:.58rem
    }
    .payment-panel {
        padding:18px;
        grid-template-columns:1fr;
        gap:16px
    }
    .payment-panel-heading {
        grid-column:auto;
        padding:6px 0
    }
    .payment-panel-heading h3 {
        font-size:2rem
    }
    .payment-current-note {
        padding:16px;
        grid-template-columns:36px 1fr
    }
    .payment-current-note>span {
        width:36px;
        height:36px
    }
}
.payment-panel {
    display:block;
    padding:28px
}
.payment-panel-heading {
    display:grid;
    padding:4px 4px 24px;
    grid-template-columns:minmax(320px,.7fr) minmax(520px,1.3fr);
    column-gap:38px;
    align-items:end
}
.payment-panel-heading>p {
    grid-column:1/-1
}
.payment-panel-heading h3 {
    margin:0;
    color:#fff;
    font-size:clamp(2rem,2.7vw,3rem)
}
.payment-panel-heading span {
    padding-left:24px;
    border-left:2px solid #ef9374
}
.payment-method-table {
    display:grid;
    gap:13px
}
.deposit-methods {
    grid-template-columns:repeat(4,minmax(0,1fr))
}
.withdrawal-methods {
    grid-template-columns:repeat(3,minmax(0,1fr))
}
.payment-method-tile {
    display:flex;
    min-height:265px;
    padding:20px;
    border:1px solid rgba(23,104,106,.13);
    border-radius:21px;
    flex-direction:column;
    color:#655566;
    background:#fff8ef
}
.method-icon {
    display:grid;
    width:100%;
    height:72px;
    margin-bottom:18px;
    border-radius:14px;
    place-items:center;
    color:#fff;
    background:#173f58;
    font:900 2.25rem/1 "Nunito",sans-serif
}
.method-icon img {
    width:78%;
    height:48px;
    object-fit:contain
}
.payment-method-tile small {
    color:#b5524c;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase
}
.payment-method-tile h4 {
    margin:7px 0 9px;
    color:#17686a;
    font:900 1.38rem/1.1 "Nunito",sans-serif
}
.payment-method-tile p {
    margin:0;
    color:#655566;
    font-size:.82rem;
    line-height:1.5
}
.payment-procedure {
    display:grid;
    margin-top:14px;
    padding:22px 24px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:21px;
    grid-template-columns:minmax(560px,1.35fr) minmax(300px,.65fr);
    gap:28px;
    color:#dce8e8;
    background:rgba(255,255,255,.07)
}
.payment-procedure>div>p {
    margin:0 0 7px;
    color:#7ee0d0;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase
}
.payment-procedure h4 {
    margin:0 0 9px;
    color:#fff;
    font:900 1.3rem/1.25 "Nunito",sans-serif
}
.payment-procedure h4 b {
    color:#f4c469
}
.payment-procedure span {
    display:block;
    font-size:.84rem;
    line-height:1.55
}
.payment-procedure aside {
    padding-left:23px;
    border-left:2px solid rgba(244,196,105,.65)
}
.payment-procedure aside strong {
    display:block;
    margin-bottom:7px;
    color:#f4c469
}
.payment-procedure aside p {
    margin:0;
    color:#dce8e8;
    font-size:.79rem;
    line-height:1.5
}
.method-icon-card {
    background:#fff;
    border:1px solid #e3e7ee
}
.method-icon-card img {
    width:min(82%,190px);
    height:50px
}
.method-icon-brand {
    display:flex;
    gap:10px;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:1px solid #e3e7ee;
    color:#243754
}
.method-icon-brand img {
    width:auto;
    max-width:78%;
    height:46px
}
.method-icon-finateco img {
    width:min(78%,190px);
    height:auto
}
.method-icon-gumball img {
    width:46px;
    height:46px
}
.method-icon-gumball span {
    color:#173b78;
    font:900 1.16rem/1 "Nunito",sans-serif
}
.method-icon-skychain {
    background:linear-gradient(135deg,#f7fbff,#eaf2f8)
}
.skychain-mark {
    color:#173f58;
    font:900 1.55rem/1 "Nunito",sans-serif;
    letter-spacing:-.04em
}
.skychain-mark span {
    color:#2a9cb0
}
@media(max-width:1050px) {
    .payment-panel-heading {
        grid-template-columns:1fr
    }
    .payment-panel-heading span {
        margin-top:15px
    }
    .deposit-methods {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .withdrawal-methods {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
    .payment-procedure {
        grid-template-columns:1fr
    }
}
@media(max-width:760px) {
    .payment-panel {
        padding:17px
    }
    .payment-panel-heading {
        display:block;
        padding-bottom:18px
    }
    .payment-panel-heading span {
        padding-left:14px
    }
    .deposit-methods,.withdrawal-methods {
        grid-template-columns:1fr
    }
    .payment-method-tile {
        min-height:0
    }
    .payment-procedure {
        padding:18px;
        gap:18px
    }
    .payment-procedure aside {
        padding:17px 0 0;
        border-top:1px solid rgba(244,196,105,.5);
        border-left:0
    }
}
.method-icon-brand {
    box-sizing:border-box;
    padding:9px 16px
}
.method-icon-brand img {
    display:block;
    object-fit:contain
}
.method-icon-gumball {
    gap:12px;
    overflow:hidden
}
.method-icon-gumball img {
    width:54px;
    height:54px;
    max-width:54px;
    object-fit:contain
}
.method-icon-gumball span,.skychain-mark {
    white-space:nowrap
}
.withdrawal-journey {
    display:grid;
    margin-top:14px;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px
}
.withdrawal-journey article {
    display:flex;
    padding:18px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:19px;
    gap:13px;
    color:#dce8e8;
    background:rgba(255,255,255,.065)
}
.withdrawal-journey article>span {
    display:grid;
    width:38px;
    height:38px;
    min-width:38px;
    border-radius:50%;
    place-items:center;
    color:#382541;
    background:#f4c469;
    font:900 1.05rem "Nunito",sans-serif
}
.withdrawal-journey small,.withdrawal-specifics small {
    color:#7ee0d0;
    font-size:.66rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase
}
.withdrawal-journey h4 {
    margin:4px 0 6px;
    color:#fff;
    font:900 1rem/1.15 "Nunito",sans-serif
}
.withdrawal-journey p {
    margin:0;
    font-size:.74rem;
    line-height:1.48
}
.withdrawal-specifics {
    display:grid;
    margin-top:12px;
    grid-template-columns:repeat(2,minmax(0,1fr)) minmax(310px,.9fr);
    gap:12px
}
.withdrawal-specifics>article,.withdrawal-specifics>aside {
    padding:20px;
    border-radius:20px
}
.withdrawal-specifics>article {
    display:grid;
    grid-template-columns:92px 1fr;
    gap:17px;
    align-items:center;
    color:#655566;
    background:#fff8ef
}
.withdrawal-specifics>article img {
    box-sizing:border-box;
    width:92px;
    height:64px;
    padding:10px;
    border-radius:13px;
    object-fit:contain;
    background:#fff;
    border:1px solid #e3e7ee
}
.withdrawal-specifics h4 {
    margin:5px 0 7px;
    color:#17686a;
    font:900 1.08rem/1.2 "Nunito",sans-serif
}
.withdrawal-specifics p {
    margin:0;
    font-size:.76rem;
    line-height:1.48
}
.withdrawal-specifics>aside {
    color:#382541;
    background:linear-gradient(135deg,#f4c469,#ef9374)
}
.withdrawal-specifics>aside small {
    color:#5f294f
}
.withdrawal-specifics>aside h4 {
    color:#382541
}
.withdrawal-specifics>aside strong {
    display:block;
    margin-top:9px;
    font-size:.76rem;
    line-height:1.4
}
.withdrawal-specifics>aside p {
    color:#4d4052
}
@media(max-width:1150px) {
    .withdrawal-journey {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .withdrawal-specifics {
        grid-template-columns:1fr 1fr
    }
    .withdrawal-specifics>aside {
        grid-column:1/-1
    }
}
@media(max-width:760px) {
    .withdrawal-journey,.withdrawal-specifics {
        grid-template-columns:1fr
    }
    .withdrawal-specifics>aside {
        grid-column:auto
    }
    .withdrawal-specifics>article {
        grid-template-columns:72px 1fr
    }
    .withdrawal-specifics>article img {
        width:72px
    }
}
.transaction-guide {
    display:grid;
    margin-top:14px;
    padding:24px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:22px;
    grid-template-columns:minmax(250px,.48fr) minmax(680px,1.52fr);
    gap:24px;
    color:#dce8e8;
    background:linear-gradient(125deg,rgba(88,201,184,.13),rgba(255,255,255,.055))
}
.transaction-guide header {
    padding-right:22px;
    border-right:1px solid rgba(244,196,105,.42)
}
.transaction-guide header p {
    margin:0 0 8px;
    color:#f4c469;
    font-size:.7rem;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase
}
.transaction-guide header h4 {
    margin:0 0 10px;
    color:#fff;
    font:900 1.42rem/1.12 "Nunito",sans-serif
}
.transaction-guide header span {
    display:block;
    font-size:.8rem;
    line-height:1.5
}
.transaction-guide-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:11px
}
.transaction-guide-grid article {
    display:flex;
    padding:15px;
    border-radius:16px;
    gap:10px;
    background:rgba(255,255,255,.075)
}
.transaction-guide-grid article>span {
    display:grid;
    width:31px;
    height:31px;
    min-width:31px;
    border-radius:10px;
    place-items:center;
    color:#382541;
    background:#f4c469;
    font-weight:900
}
.transaction-guide-grid small {
    color:#7ee0d0;
    font-size:.58rem;
    font-weight:900;
    letter-spacing:.065em;
    text-transform:uppercase
}
.transaction-guide-grid h5 {
    margin:3px 0 5px;
    color:#fff;
    font:900 .84rem/1.2 "Nunito",sans-serif
}
.transaction-guide-grid p {
    margin:0;
    font-size:.67rem;
    line-height:1.43
}
.withdrawal-safety .transaction-guide-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.withdrawal-safety {
    background:linear-gradient(125deg,rgba(239,147,116,.12),rgba(255,255,255,.055))
}
@media(max-width:1180px) {
    .transaction-guide {
        grid-template-columns:1fr
    }
    .transaction-guide header {
        padding:0 0 18px;
        border-right:0;
        border-bottom:1px solid rgba(244,196,105,.42)
    }
}
@media(max-width:800px) {
    .transaction-guide {
        padding:18px
    }
    .transaction-guide-grid,.withdrawal-safety .transaction-guide-grid {
        grid-template-columns:1fr
    }
}
.mobile-casino-section {
    scroll-margin-top:92px;
    padding:105px clamp(22px,5vw,86px);
    color:#4d4052;
    background:radial-gradient(circle at 86% 27%,rgba(88,201,184,.3),transparent 28%),
        radial-gradient(circle at 12% 82%,rgba(244,196,105,.25),transparent 23%),
        linear-gradient(135deg,#fff8ef,#edf7f3)
}
.mobile-casino-shell {
    max-width:1540px;
    margin:auto
}
.mobile-casino-heading {
    display:grid;
    grid-template-columns:minmax(460px,.8fr) minmax(580px,1.2fr);
    gap:70px;
    align-items:end
}
.mobile-casino-kicker {
    display:inline-flex;
    margin:0 0 15px;
    padding:8px 14px;
    border-radius:999px;
    color:#fff;
    background:#b5524c;
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase
}
.mobile-casino-heading h2 {
    margin:0;
    color:#17686a;
    font:800 clamp(3.6rem,6vw,6.4rem)/.88 "Fredoka",sans-serif;
    letter-spacing:-.045em
}
.mobile-casino-heading>div:last-child {
    padding-left:28px;
    border-left:3px solid #ef9374
}
.mobile-casino-heading>div:last-child p {
    margin:0;
    font-size:1rem;
    line-height:1.72
}
.mobile-casino-heading>div:last-child p+p {
    margin-top:12px
}
.mobile-casino-stage {
    display:grid;
    margin-top:55px;
    border-radius:38px;
    grid-template-columns:minmax(610px,1.08fr) minmax(470px,.92fr);
    overflow:hidden;
    background:linear-gradient(135deg,#262342,#123f56 58%,#0d6567);
    box-shadow:0 28px 70px rgba(53,44,61,.16)
}
.mobile-casino-copy {
    padding:55px
}
.mobile-casino-copy>p:first-child {
    margin:0 0 10px;
    color:#f4c469;
    font-weight:900;
    letter-spacing:.09em;
    text-transform:uppercase
}
.mobile-casino-copy>h3 {
    max-width:650px;
    margin:0;
    color:#fff;
    font:800 clamp(2.5rem,4vw,4.4rem)/.98 "Fredoka",sans-serif
}
.mobile-casino-lead {
    max-width:760px;
    margin:20px 0 28px;
    color:#dce8e8;
    line-height:1.65
}
.device-route-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px
}
.device-route-grid article {
    display:flex;
    padding:18px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:19px;
    gap:13px;
    background:rgba(255,255,255,.07)
}
.device-route-grid article>span {
    display:grid;
    width:38px;
    height:38px;
    min-width:38px;
    border-radius:12px;
    place-items:center;
    color:#382541;
    background:#f4c469;
    font-weight:900
}
.device-route-grid small {
    color:#7ee0d0;
    font-size:.65rem;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase
}
.device-route-grid h4 {
    margin:4px 0 6px;
    color:#fff;
    font:900 1rem/1.15 "Nunito",sans-serif
}
.device-route-grid p {
    margin:0;
    color:#dce8e8;
    font-size:.75rem;
    line-height:1.46
}
.mobile-hostess-visual {
    position:relative;
    min-height:700px;
    margin:0;
    overflow:hidden;
    background:radial-gradient(circle at 54% 43%,rgba(244,196,105,.25),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.05),rgba(88,201,184,.1))
}
.mobile-hostess-visual>img {
    position:absolute;
    z-index:2;
    left:50%;
    bottom:-3%;
    width:112%;
    max-width:none;
    transform:translateX(-51%);
    filter:drop-shadow(0 25px 28px rgba(0,0,0,.22))
}
.mobile-orbit {
    position:absolute;
    border:1px solid rgba(244,196,105,.5);
    border-radius:50%
}
.mobile-orbit-one {
    top:13%;
    right:8%;
    width:340px;
    height:340px
}
.mobile-orbit-two {
    right:21%;
    bottom:19%;
    width:190px;
    height:190px;
    border-color:rgba(126,224,208,.48)
}
.mobile-hostess-visual figcaption {
    position:absolute;
    z-index:3;
    right:24px;
    bottom:24px;
    left:24px;
    padding:17px 20px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:17px;
    color:#fff;
    background:rgba(18,55,75,.78);
    backdrop-filter:blur(12px)
}
.mobile-hostess-visual figcaption strong,.mobile-hostess-visual figcaption span {
    display:block
}
.mobile-hostess-visual figcaption strong {
    font-size:.92rem
}
.mobile-hostess-visual figcaption span {
    margin-top:3px;
    color:#cfe2e2;
    font-size:.72rem
}
.mobile-essentials {
    display:grid;
    margin-top:18px;
    grid-template-columns:repeat(4,1fr);
    gap:12px
}
.mobile-essentials article {
    padding:24px;
    border:1px solid rgba(23,104,106,.13);
    border-radius:22px;
    background:rgba(255,255,255,.78)
}
.mobile-essentials span {
    display:inline-flex;
    padding:6px 10px;
    border-radius:999px;
    color:#fff;
    background:#b5524c;
    font-size:.65rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase
}
.mobile-essentials h3 {
    margin:12px 0 8px;
    color:#17686a;
    font:900 1.12rem/1.2 "Nunito",sans-serif
}
.mobile-essentials p {
    margin:0;
    font-size:.78rem;
    line-height:1.5
}
.mobile-session-note {
    display:grid;
    margin-top:18px;
    padding:30px 34px;
    border-radius:24px;
    grid-template-columns:minmax(360px,.7fr) minmax(560px,1.3fr);
    gap:40px;
    align-items:center;
    color:#dce8e8;
    background:linear-gradient(100deg,#17686a,#164a60)
}
.mobile-session-note div>p {
    margin:0 0 7px;
    color:#f4c469;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase
}
.mobile-session-note h3 {
    margin:0;
    color:#fff;
    font:900 1.45rem/1.18 "Nunito",sans-serif
}
.mobile-session-note>p {
    margin:0;
    padding-left:28px;
    border-left:1px solid rgba(255,255,255,.25);
    font-size:.82rem;
    line-height:1.6
}
@media(max-width:1180px) {
    .mobile-casino-heading {
        grid-template-columns:1fr;
        gap:28px
    }
    .mobile-casino-stage {
        grid-template-columns:1fr
    }
    .mobile-hostess-visual {
        min-height:650px
    }
    .mobile-hostess-visual>img {
        width:min(820px,100%)
    }
    .mobile-essentials {
        grid-template-columns:1fr 1fr
    }
}
@media(max-width:760px) {
    .mobile-casino-section {
        padding:70px 14px
    }
    .mobile-casino-heading h2 {
        font-size:3.25rem
    }
    .mobile-casino-heading>div:last-child {
        padding-left:17px
    }
    .mobile-casino-stage {
        margin-top:35px;
        border-radius:28px
    }
    .mobile-casino-copy {
        padding:27px 20px
    }
    .device-route-grid {
        grid-template-columns:1fr
    }
    .mobile-hostess-visual {
        min-height:480px
    }
    .mobile-hostess-visual>img {
        bottom:0;
        width:118%
    }
    .mobile-hostess-visual figcaption {
        right:14px;
        bottom:14px;
        left:14px
    }
    .mobile-essentials {
        grid-template-columns:1fr
    }
    .mobile-session-note {
        padding:24px;
        grid-template-columns:1fr;
        gap:18px
    }
    .mobile-session-note>p {
        padding:17px 0 0;
        border-top:1px solid rgba(255,255,255,.25);
        border-left:0
    }
}
@media(min-width:1181px) {
    .mobile-casino-stage {
        grid-template-columns:minmax(470px,.92fr) minmax(610px,1.08fr)
    }
    .mobile-hostess-visual {
        grid-column:1;
        grid-row:1
    }
    .mobile-casino-copy {
        grid-column:2;
        grid-row:1
    }
}
.mobile-hostess-visual .mobile-orbit {
    display:none
}
.mobile-hostess-visual>img {
    top:47%;
    bottom:auto;
    width:94%;
    transform:translate(-50%,-50%)
}
@media(max-width:1180px) {
    .mobile-hostess-visual>img {
        top:47%;
        bottom:auto;
        width:min(760px,92%);
        transform:translate(-50%,-50%)
    }
}
@media(max-width:760px) {
    .mobile-hostess-visual>img {
        top:45%;
        bottom:auto;
        width:94%;
        transform:translate(-50%,-50%)
    }
}
.games-heading,.live-heading {
    display:grid;
    grid-template-columns:minmax(330px,.78fr) minmax(500px,1.22fr);
    gap:clamp(36px,6vw,94px);
    align-items:end;
    max-width:none!important
}
.games-heading-copy,.live-heading-copy {
    padding:2px 0 2px 28px;
    border-left:3px solid #ee9a79
}
.games-heading-copy p,.live-heading-copy p {
    margin:0;
    color:inherit;
    font-size:1.04rem;
    line-height:1.68
}
.games-heading-copy p+p,.live-heading-copy p+p {
    margin-top:13px
}
.games-orientation,.live-orientation {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin:0 0 28px
}
.games-orientation article,.live-orientation article {
    position:relative;
    min-height:168px;
    padding:23px 24px;
    border-radius:20px
}
.games-orientation article {
    display:grid;
    grid-template-columns:38px 1fr;
    gap:15px;
    color:#e8f7f3;
    background:rgba(255,255,255,.075);
    border:1px solid rgba(255,255,255,.15)
}
.games-orientation span {
    display:grid;
    width:38px;
    height:38px;
    place-items:center;
    border-radius:12px;
    color:#173e42;
    background:#f1c66d;
    font-weight:1000
}
.games-orientation small,.live-orientation small {
    display:block;
    margin-bottom:5px;
    font-size:.72rem;
    font-weight:1000;
    letter-spacing:.11em;
    text-transform:uppercase
}
.games-orientation small {
    color:#75d7c3
}
.games-orientation h3 {
    color:#fff
}
.games-orientation h3,.live-orientation h3 {
    margin:0 0 7px;
    font:700 1.2rem/1.18 "Fredoka",sans-serif
}
.games-orientation p,.live-orientation p {
    margin:0;
    font-size:.9rem;
    line-height:1.52
}
.live-orientation article {
    color:#5c4857;
    background:rgba(255,250,245,.84);
    border:1px solid rgba(20,94,96,.18);
    box-shadow:0 11px 27px rgba(43,74,68,.07)
}
.live-orientation article::after {
    content:"";
    position:absolute;
    right:22px;
    top:22px;
    width:10px;
    height:10px;
    border-radius:50%;
    background:#66c9b8;
    box-shadow:0 0 0 6px rgba(102,201,184,.13)
}
.live-orientation small {
    color:#b65347
}
.live-orientation h3 {
    color:#145e60
}
@media(max-width:980px) {
    .games-heading,.live-heading {
        grid-template-columns:1fr;
        gap:24px
    }
    .games-heading-copy,.live-heading-copy {
        max-width:850px
    }
    .games-orientation,.live-orientation {
        grid-template-columns:1fr
    }
    .games-orientation article,.live-orientation article {
        min-height:0
    }
}
@media(max-width:620px) {
    .games-heading-copy,.live-heading-copy {
        padding-left:18px
    }
    .games-heading-copy p,.live-heading-copy p {
        font-size:.96rem
    }
    .games-orientation article {
        grid-template-columns:34px 1fr;
        padding:20px 18px
    }
    .games-orientation span {
        width:34px;
        height:34px
    }
    .live-orientation article {
        padding:20px
    }
}
.catalog-source-index {
    margin-top:28px;
    border:1px solid rgba(241,198,109,.52);
    border-radius:20px;
    color:#e8f6f2;
    background:rgba(3,48,58,.46);
    overflow:hidden
}
.catalog-source-index>summary {
    display:flex;
    justify-content:space-between;
    gap:24px;
    padding:20px 24px;
    cursor:pointer;
    list-style:none
}
.catalog-source-index>summary::-webkit-details-marker {
    display:none
}
.catalog-source-index>summary span {
    color:#f2c86f;
    font-weight:1000;
    text-transform:uppercase;
    letter-spacing:.09em
}
.catalog-source-index>summary strong {
    font-family:"Fredoka",sans-serif
}
.catalog-source-body {
    display:grid;
    gap:16px;
    padding:0 18px 18px
}
.catalog-source-body>section {
    padding:22px;
    border-radius:16px;
    background:rgba(255,255,255,.07)
}
.catalog-source-body h3 {
    margin:0 0 13px;
    color:#fff;
    font:700 1.65rem "Fredoka",sans-serif
}
.catalog-source-body article+article {
    margin-top:18px
}
.catalog-source-body h4 {
    margin:0 0 7px;
    color:#77d7c4;
    font-size:1.05rem
}
.catalog-source-body p {
    margin:0;
    line-height:1.58
}
.catalog-source-body ul {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin:16px 0 0;
    padding:0;
    list-style:none
}
.catalog-source-body li {
    padding:14px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:12px;
    background:rgba(255,255,255,.055)
}
.catalog-source-body li strong,.catalog-source-body li span {
    display:block
}
.catalog-source-body li span {
    margin:3px 0 7px;
    color:#f2c86f;
    font-size:.78rem;
    font-weight:900
}
.catalog-source-body li p {
    font-size:.84rem
}
.live-source-index {
    margin-top:30px;
    background:linear-gradient(135deg,#0e6667,#124f5c)
}
.games-guide-panel[hidden] {
    display:none!important
}
@media(max-width:850px) {
    .catalog-source-body ul {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:560px) {
    .catalog-source-index>summary {
        flex-direction:column;
        gap:4px;
        padding:17px
    }
    .catalog-source-body {
        padding:0 10px 10px
    }
    .catalog-source-body>section {
        padding:17px 14px
    }
    .catalog-source-body ul {
        grid-template-columns:1fr
    }
}
.about-bubblesbet-section {
    position:relative;
    padding:clamp(76px,8vw,132px) 24px;
    background:linear-gradient(135deg,#fff8f1 0%,#f8e7dc 48%,#dff3ed 100%);
    overflow:hidden
}
.about-bubblesbet-section::before {
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    right:-180px;
    top:-180px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(105,211,187,.28),rgba(105,211,187,0) 70%);
    pointer-events:none
}
.about-bubblesbet-shell {
    position:relative;
    width:min(1500px,100%);
    margin:0 auto
}
.about-bubblesbet-heading {
    display:grid;
    grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr);
    gap:clamp(50px,7vw,112px);
    align-items:end;
    margin-bottom:46px
}
.about-bubblesbet-kicker,.about-story-label {
    margin:0 0 12px;
    color:#bd594c;
    font-size:.84rem;
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase
}
.about-bubblesbet-heading h2 {
    max-width:670px;
    margin:0;
    color:#126665;
    font:700 clamp(3.15rem,5.6vw,6.2rem)/.94 "Fredoka",sans-serif;
    letter-spacing:-.035em
}
.about-bubblesbet-subtitle {
    max-width:570px;
    margin:20px 0 0;
    color:#765a70;
    font:700 clamp(1.25rem,2vw,1.7rem)/1.25 "Fredoka",sans-serif
}
.about-bubblesbet-intro {
    padding:4px 0 4px 34px;
    border-left:3px solid #ef9979;
    color:#604d5b;
    font-size:1.08rem;
    line-height:1.72
}
.about-bubblesbet-intro p {
    margin:0
}
.about-bubblesbet-intro p+p {
    margin-top:16px
}
.about-bubblesbet-board {
    display:grid;
    grid-template-columns:minmax(0,1.16fr) minmax(380px,.84fr);
    gap:18px;
    padding:18px;
    border-radius:38px;
    background:linear-gradient(135deg,#263050,#0e5c64);
    box-shadow:0 28px 65px rgba(33,49,72,.17)
}
.about-bubblesbet-story,.about-bubblesbet-guide {
    border-radius:25px;
    padding:clamp(28px,3.7vw,54px)
}
.about-bubblesbet-story {
    color:#e9f7f3;
    background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.02));
    border:1px solid rgba(255,255,255,.14)
}
.about-bubblesbet-story h3,.about-bubblesbet-guide h3 {
    margin:0 0 20px;
    font:700 clamp(2rem,3vw,3.15rem)/1.06 "Fredoka",sans-serif
}
.about-bubblesbet-story h3 {
    color:#fff
}
.about-bubblesbet-guide h3 {
    color:#126665
}
.about-bubblesbet-story>p:not(.about-story-label),.about-bubblesbet-guide>p:not(.about-story-label) {
    margin:0;
    color:inherit;
    font-size:1rem;
    line-height:1.72
}
.about-bubblesbet-story>p+p,.about-bubblesbet-guide>p+p {
    margin-top:17px!important
}
.about-bubblesbet-guide {
    color:#665361;
    background:#fff8f0
}
.about-direction-map {
    display:grid;
    grid-template-columns:210px 1fr;
    gap:20px;
    align-items:center;
    margin-top:34px;
    padding:24px;
    border-radius:20px;
    background:rgba(4,41,52,.38)
}
.about-map-centre {
    display:grid;
    justify-items:center;
    padding:19px;
    border:1px solid rgba(245,198,104,.55);
    border-radius:18px;
    text-align:center
}
.about-map-centre span {
    color:#6fd2bf;
    font-size:1.8rem;
    line-height:1
}
.about-map-centre strong {
    margin-top:4px;
    color:#fff;
    font:700 1.45rem "Fredoka",sans-serif
}
.about-map-centre small {
    color:#bfe7df
}
.about-map-route {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px
}
.about-map-route span {
    padding:12px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:12px;
    color:#f7d083;
    background:rgba(255,255,255,.06);
    font-weight:900;
    text-align:center
}
.about-bubblesbet-pillars {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    margin-top:18px
}
.about-bubblesbet-pillars article {
    position:relative;
    min-height:210px;
    padding:30px 30px 28px 76px;
    border:1px solid rgba(18,102,101,.14);
    border-radius:24px;
    background:rgba(255,252,247,.82);
    box-shadow:0 14px 34px rgba(49,65,79,.07)
}
.about-bubblesbet-pillars span {
    position:absolute;
    left:28px;
    top:31px;
    display:grid;
    width:32px;
    height:32px;
    place-items:center;
    border-radius:10px;
    color:#173f4b;
    background:#f5c668;
    font-weight:900
}
.about-bubblesbet-pillars h3 {
    margin:0 0 10px;
    color:#126665;
    font:700 1.42rem "Fredoka",sans-serif
}
.about-bubblesbet-pillars p {
    margin:0;
    color:#6b5665;
    line-height:1.62
}
.about-responsible-note {
    display:grid;
    grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);
    gap:30px;
    align-items:center;
    margin-top:18px;
    padding:27px 32px;
    border-radius:24px;
    color:#e7f5f1;
    background:#124e58
}
.about-responsible-note div {
    display:flex;
    align-items:center;
    gap:15px
}
.about-responsible-note span {
    display:grid;
    flex:0 0 52px;
    height:52px;
    place-items:center;
    border:2px solid #f2c66c;
    border-radius:50%;
    color:#f2c66c;
    font-weight:1000
}
.about-responsible-note strong {
    font:700 1.35rem "Fredoka",sans-serif
}
.about-responsible-note p {
    margin:0;
    color:#d6ebe6;
    line-height:1.65
}
@media(max-width:1050px) {
    .about-bubblesbet-heading,.about-bubblesbet-board {
        grid-template-columns:1fr
    }
    .about-bubblesbet-heading {
        gap:28px
    }
    .about-bubblesbet-intro {
        max-width:850px
    }
    .about-bubblesbet-pillars {
        grid-template-columns:1fr
    }
    .about-bubblesbet-pillars article {
        min-height:0
    }
    .about-responsible-note {
        grid-template-columns:1fr
    }
}
@media(max-width:620px) {
    .about-bubblesbet-section {
        padding:66px 14px
    }
    .about-bubblesbet-heading h2 {
        font-size:3rem
    }
    .about-bubblesbet-intro {
        padding-left:20px;
        font-size:1rem
    }
    .about-bubblesbet-board {
        padding:10px;
        border-radius:27px
    }
    .about-bubblesbet-story,.about-bubblesbet-guide {
        padding:25px 21px;
        border-radius:20px
    }
    .about-direction-map {
        grid-template-columns:1fr;
        padding:16px
    }
    .about-bubblesbet-pillars article {
        padding:25px 22px 25px 68px
    }
    .about-bubblesbet-pillars span {
        left:22px;
        top:25px
    }
    .about-responsible-note {
        padding:24px 21px
    }
}
.about-bubblesbet-heading {
    grid-template-columns:minmax(0,1.62fr) minmax(360px,.98fr);
    gap:clamp(28px,4vw,62px);
    align-items:stretch
}
.about-heading-copy {
    display:block;
    min-width:0;
    padding:clamp(26px,3vw,42px) 0
}
.about-heading-copy .about-bubblesbet-intro {
    max-width:780px;
    margin-top:34px
}
.about-brand-scene {
    position:relative;
    min-height:570px;
    margin:0;
    border:1px solid rgba(255,255,255,.58);
    border-radius:34px;
    overflow:hidden;
    background:radial-gradient(circle at 62% 35%,rgba(244,196,105,.36),transparent 31%),linear-gradient(150deg,#163b58 0%,#12696a 65%,#49aa9d 100%);
    box-shadow:0 24px 55px rgba(28,72,78,.17)
}
.about-brand-scene::before {
    content:"";
    position:absolute;
    inset:10% 11% 13%;
    border:1px solid rgba(244,196,105,.36);
    border-radius:48% 52% 46% 54%;
    transform:rotate(-7deg)
}
.about-brand-scene figcaption {
    position:absolute;
    z-index:4;
    right:20px;
    bottom:18px;
    left:20px;
    padding:12px 16px;
    border-radius:14px;
    color:#e2f4ef;
    background:rgba(9,49,65,.76);
    font-size:.78rem;
    font-weight:800;
    text-align:center;
    backdrop-filter:blur(9px)
}
@keyframes aboutBubbleDrift {
    0%,100% {
        transform:translate3d(0,0,0)
    }
    50% {
        transform:translate3d(0,-12px,0)
    }
}
@media(max-width:1180px) {
    .about-bubblesbet-heading {
        grid-template-columns:1fr
    }
    .about-brand-scene {
        min-height:520px
    }
}
@media(max-width:760px) {
    .about-heading-copy {
        padding:0
    }
    .about-heading-copy .about-bubblesbet-intro {
        margin-top:26px
    }
    .about-brand-scene {
        min-height:500px;
        border-radius:27px
    }
}
@media(max-width:430px) {
    .about-brand-scene {
        min-height:455px
    }
}
.about-bubblesbet-heading {
    grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
    gap:clamp(34px,4.5vw,72px);
    align-items:center;
    margin-bottom:34px
}
.about-heading-copy {
    padding:clamp(18px,2.2vw,32px) 0
}
.about-heading-copy .about-bubblesbet-intro {
    max-width:820px;
    margin-top:30px
}
.about-brand-scene {
    min-height:510px
}
.about-bubblesbet-board {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    padding:18px;
    border:1px solid rgba(18,102,101,.13);
    background:rgba(255,255,255,.42);
    box-shadow:0 22px 52px rgba(52,88,88,.1)
}
.about-bubblesbet-story,.about-bubblesbet-guide {
    height:100%;
    color:#665361;
    border:1px solid rgba(18,102,101,.12);
    background:rgba(255,250,245,.9)
}
.about-bubblesbet-story h3,.about-bubblesbet-guide h3 {
    color:#126665
}
.about-direction-map {
    background:#155d65
}
.about-bubblesbet-pillars {
    align-items:stretch
}
.about-bubblesbet-pillars article {
    height:100%;
    min-height:0
}
@media(max-width:1180px) {
    .about-bubblesbet-heading {
        grid-template-columns:1fr
    }
    .about-brand-scene {
        min-height:500px
    }
}
@media(max-width:1050px) {
    .about-bubblesbet-board {
        grid-template-columns:1fr
    }
}
@media(max-width:620px) {
    .about-bubblesbet-heading {
        gap:24px;
        margin-bottom:24px
    }
    .about-heading-copy .about-bubblesbet-intro {
        margin-top:24px
    }
    .about-brand-scene {
        min-height:400px
    }
    .about-bubblesbet-board {
        gap:10px;
        padding:10px
    }
    .about-bubblesbet-pillars {
        gap:10px;
        margin-top:10px
    }
    .about-responsible-note {
        margin-top:10px
    }
}
.about-brand-scene {
    min-height:540px;
    border-color:rgba(18,102,101,.14);
    background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.96),rgba(234,249,245,.88) 48%,rgba(252,224,218,.82) 100%);
    box-shadow:0 22px 55px rgba(52,88,88,.12)
}
.about-brand-scene::before {
    inset:12%;
    border-color:rgba(32,139,132,.2);
    border-radius:50%;
    transform:none
}
.about-brand-scene figcaption {
    right:50%;
    bottom:20px;
    left:auto;
    width:max-content;
    max-width:80%;
    padding:7px 12px;
    transform:translateX(50%);
    color:#6d5867;
    background:rgba(255,255,255,.75);
    font-size:.67rem;
    box-shadow:none
}
@media(max-width:760px) {
    .about-brand-scene {
        min-height:470px
    }
}
@media(max-width:430px) {
    .about-brand-scene {
        min-height:430px
    }
    .about-brand-scene figcaption {
        max-width:90%;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis
    }
}
.about-brand-scene {
    min-height:0;
    aspect-ratio:1;
    isolation:isolate;
    background:#e9f7f1
}
.about-brand-scene::before {
    display:none
}
.about-casino-world {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center
}
@media(max-width:1180px) {
    .about-brand-scene {
        min-height:0;
        aspect-ratio:16/10
    }
    .about-casino-world {
        object-position:center 48%
    }
}
@media(max-width:760px) {
    .about-brand-scene {
        min-height:0;
        aspect-ratio:1
    }
    .about-casino-world {
        object-position:center
    }
}
.tournaments-section {
    position:relative;
    scroll-margin-top:92px;
    padding:96px clamp(22px,5vw,86px);
    overflow:hidden;
    color:#f7f5ef;
    background:radial-gradient(circle at 9% 13%,rgba(96,224,196,.2),transparent 25%),
        radial-gradient(circle at 92% 82%,rgba(244,190,70,.2),transparent 28%),
        linear-gradient(135deg,#182745 0%,#123f5a 52%,#106a67 100%)
}
.tournaments-section::before {
    content:"";
    position:absolute;
    width:430px;
    height:430px;
    right:-170px;
    top:-190px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:50%;
    box-shadow:0 0 0 58px rgba(255,255,255,.035),0 0 0 116px rgba(255,255,255,.025)
}
.tournaments-shell {
    position:relative;
    z-index:1;
    max-width:1500px;
    margin:auto
}
.tournaments-heading {
    display:grid;
    grid-template-columns:minmax(430px,.8fr) minmax(560px,1.2fr);
    gap:70px;
    align-items:end
}
.tournaments-kicker {
    margin:0 0 13px;
    color:#f5c35c;
    font-size:.82rem;
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase
}
.tournaments-heading h2 {
    max-width:720px;
    margin:0;
    color:#fff;
    font:700 clamp(3rem,5vw,5.35rem)/.95 "Fredoka",sans-serif
}
.tournaments-intro {
    padding-left:30px;
    border-left:2px solid #f0a16f
}
.tournaments-intro p {
    margin:0;
    color:#dcecef;
    font-size:1.03rem;
    line-height:1.7
}
.tournaments-intro p+p {
    margin-top:13px
}
.tournament-arena {
    display:grid;
    margin-top:44px;
    grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);
    gap:18px
}
.tournament-route {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px
}
.tournament-route article {
    display:flex;
    min-height:176px;
    padding:27px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:23px;
    gap:19px;
    background:rgba(255,255,255,.075);
    box-shadow:0 16px 32px rgba(4,28,45,.12)
}
.tournament-route article>span {
    display:grid;
    width:48px;
    height:48px;
    min-width:48px;
    border-radius:15px;
    place-items:center;
    color:#3c2945;
    background:linear-gradient(145deg,#ffd668,#ef9b65);
    font-weight:1000
}
.tournament-route small {
    color:#6fe0cc;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase
}
.tournament-route h3 {
    margin:5px 0 9px;
    color:#fff;
    font:700 1.36rem/1.12 "Fredoka",sans-serif
}
.tournament-route p {
    margin:0;
    color:#cfdee2;
    line-height:1.55
}
.tournament-board {
    padding:29px;
    border-radius:28px;
    color:#4e4051;
    background:linear-gradient(145deg,#fff9eb,#f6ddd0 55%,#dff3ec);
    box-shadow:0 24px 50px rgba(4,28,45,.25)
}
.tournament-board-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px
}
.tournament-board-head p {
    margin:0;
    color:#b6524c;
    font-size:.72rem;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase
}
.tournament-board-head h3 {
    margin:4px 0 0;
    color:#17686a;
    font:700 2rem/1.05 "Fredoka",sans-serif
}
.tournament-board-head>span {
    display:grid;
    width:58px;
    height:58px;
    border-radius:18px;
    place-items:center;
    background:#f4c25d;
    font-size:1.8rem
}
.tournament-podium {
    display:flex;
    height:68px;
    margin:23px 0 10px;
    align-items:end;
    justify-content:center;
    gap:7px
}
.tournament-podium i {
    display:block;
    width:25%;
    height:42%;
    border-radius:9px 9px 3px 3px;
    background:#ef9b72
}
.tournament-podium i:nth-child(2) {
    height:100%;
    background:#f4c25d
}
.tournament-podium i:nth-child(3) {
    height:65%;
    background:#60cbb6
}
.tournament-board ol {
    display:grid;
    margin:0;
    padding:0;
    gap:8px;
    list-style:none
}
.tournament-board li {
    display:grid;
    padding:12px 14px;
    border:1px solid rgba(23,104,106,.12);
    border-radius:14px;
    grid-template-columns:34px 1fr auto;
    gap:10px;
    align-items:center;
    background:rgba(255,255,255,.7)
}
.tournament-board li>b {
    display:grid;
    width:30px;
    height:30px;
    border-radius:9px;
    place-items:center;
    color:#fff;
    background:#17686a
}
.tournament-board li span {
    display:grid
}
.tournament-board li strong {
    color:#47384a
}
.tournament-board li small {
    color:#7a6877
}
.tournament-board li em {
    color:#a04b45;
    font-size:.7rem;
    font-style:normal;
    font-weight:900;
    text-align:right
}
.tournament-current-note {
    display:grid;
    margin:18px 0 0;
    padding:14px 16px;
    border-radius:14px;
    grid-template-columns:auto 1fr;
    gap:12px;
    color:#e5f2ef;
    background:#175e63
}
.tournament-current-note strong {
    color:#f4c25d
}
.tournament-current-note span {
    font-size:.78rem;
    line-height:1.4
}
.tournament-checks {
    display:grid;
    margin-top:18px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px
}
.tournament-checks article {
    position:relative;
    padding:25px 25px 25px 72px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:21px;
    background:rgba(255,255,255,.07)
}
.tournament-checks span {
    position:absolute;
    left:23px;
    top:25px;
    display:grid;
    width:34px;
    height:34px;
    border-radius:10px;
    place-items:center;
    color:#243754;
    background:#69d4c0;
    font-size:.68rem;
    font-weight:1000
}
.tournament-checks h3 {
    margin:0 0 7px;
    color:#fff;
    font:700 1.3rem "Fredoka",sans-serif
}
.tournament-checks p {
    margin:0;
    color:#cfdee2;
    line-height:1.55
}
@media(max-width:1080px) {
    .tournaments-heading,.tournament-arena {
        grid-template-columns:1fr
    }
    .tournaments-heading {
        gap:26px
    }
    .tournament-board {
        max-width:none
    }
}
@media(max-width:700px) {
    .tournaments-section {
        padding:66px 14px
    }
    .tournaments-heading h2 {
        font-size:2.7rem
    }
    .tournaments-intro {
        padding-left:18px
    }
    .tournament-route,.tournament-checks {
        grid-template-columns:1fr
    }
    .tournament-route article {
        min-height:0;
        padding:21px
    }
    .tournament-board {
        padding:22px 16px
    }
    .tournament-board li {
        grid-template-columns:32px 1fr
    }
    .tournament-board li em {
        grid-column:2;
        text-align:left
    }
    .tournament-current-note {
        grid-template-columns:1fr
    }
    .tournament-checks {
        gap:10px
    }
}
.tournament-arena {
    grid-template-columns:minmax(0,1.18fr) minmax(410px,.82fr);
    align-items:stretch
}
.tournament-visual {
    position:relative;
    min-height:520px;
    margin:0;
    border:1px solid rgba(255,255,255,.16);
    border-radius:28px;
    overflow:hidden;
    background:#091c39;
    box-shadow:0 24px 48px rgba(2,19,38,.24)
}
.tournament-visual img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center
}
.tournament-visual figcaption {
    position:absolute;
    right:18px;
    bottom:18px;
    left:18px;
    display:grid;
    padding:14px 17px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:16px;
    color:#dceced;
    background:rgba(7,29,52,.78);
    backdrop-filter:blur(9px)
}
.tournament-visual figcaption strong {
    color:#f4c25d;
    font:700 1.08rem "Fredoka",sans-serif
}
.tournament-visual figcaption span {
    margin-top:3px;
    font-size:.78rem;
    line-height:1.4
}
.tournament-route {
    margin-top:18px
}
.tournament-formats,.tournament-duration-guide,.tournament-advice {
    margin-top:18px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:28px
}
.tournament-formats {
    display:grid;
    padding:31px;
    grid-template-columns:minmax(300px,.38fr) minmax(0,1.62fr);
    gap:30px;
    background:rgba(255,255,255,.065)
}
.tournament-formats>header h3,.tournament-duration-guide h3,.tournament-advice>header h3 {
    margin:4px 0 12px;
    color:#fff;
    font:700 clamp(1.9rem,2.8vw,3rem)/1.05 "Fredoka",sans-serif
}
.tournament-formats>header>p:last-child,.tournament-duration-guide>div>p:last-child {
    margin:0;
    color:#cddfe3;
    line-height:1.6
}
.tournament-formats>div {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px
}
.tournament-formats article {
    padding:20px;
    border-radius:18px;
    color:#564657;
    background:#fff8ee
}
.tournament-formats article span {
    color:#b6524c;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase
}
.tournament-formats h4 {
    margin:5px 0 8px;
    color:#17686a;
    font:700 1.3rem "Fredoka",sans-serif
}
.tournament-formats article p {
    margin:0;
    line-height:1.52
}
.tournament-duration-guide {
    display:grid;
    padding:30px;
    grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr);
    gap:28px;
    align-items:center;
    background:linear-gradient(115deg,rgba(12,44,68,.88),rgba(16,103,99,.82))
}
.tournament-time-cards {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px
}
.tournament-time-cards article {
    display:grid;
    padding:18px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:16px;
    background:rgba(255,255,255,.07)
}
.tournament-time-cards strong {
    color:#f4c25d;
    font:700 1.25rem "Fredoka",sans-serif
}
.tournament-time-cards span {
    margin-top:4px;
    color:#d7e8e8;
    font-size:.8rem
}
.tournament-advice {
    padding:31px;
    background:linear-gradient(145deg,#fff8ec,#f3d9ce);
    color:#574657
}
.tournament-advice>header {
    display:grid;
    grid-template-columns:.75fr 1.25fr;
    gap:30px;
    align-items:end
}
.tournament-advice>header .tournaments-kicker {
    margin:0
}
.tournament-advice>header h3 {
    color:#17686a
}
.tournament-advice>div {
    display:grid;
    margin-top:21px;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:11px
}
.tournament-advice article {
    position:relative;
    padding:20px 18px 20px 54px;
    border:1px solid rgba(23,104,106,.13);
    border-radius:18px;
    background:rgba(255,255,255,.65)
}
.tournament-advice b {
    position:absolute;
    left:16px;
    top:19px;
    display:grid;
    width:27px;
    height:27px;
    border-radius:9px;
    place-items:center;
    color:#fff;
    background:#17686a
}
.tournament-advice h4 {
    margin:0 0 8px;
    color:#493c4d;
    font-size:1rem
}
.tournament-advice p {
    margin:0;
    font-size:.82rem;
    line-height:1.5
}
.about-map-route {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.about-map-route span:nth-child(5) {
    grid-column:1/-1
}
@media(max-width:1080px) {
    .tournament-arena,.tournament-formats,.tournament-duration-guide {
        grid-template-columns:1fr
    }
    .tournament-visual {
        min-height:480px
    }
    .tournament-advice>div {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
}
@media(max-width:700px) {
    .tournament-visual {
        min-height:0;
        aspect-ratio:1;
        border-radius:22px
    }
    .tournament-visual figcaption {
        right:10px;
        bottom:10px;
        left:10px;
        padding:11px 13px
    }
    .tournament-route {
        margin-top:10px
    }
    .tournament-formats,.tournament-duration-guide,.tournament-advice {
        padding:22px 16px;
        border-radius:22px
    }
    .tournament-formats>div,.tournament-time-cards,.tournament-advice>div,.tournament-advice>header {
        grid-template-columns:1fr
    }
    .tournament-advice>header {
        gap:5px
    }
    .tournament-formats article {
        padding:18px
    }
    .tournament-advice article {
        padding-left:52px
    }
}
.faq-section {
    position:relative;
    scroll-margin-top:92px;
    padding:96px clamp(22px,5vw,86px);
    overflow:hidden;
    color:#594958;
    background:radial-gradient(circle at 4% 14%,rgba(96,211,189,.18),transparent 25%),
        radial-gradient(circle at 94% 12%,rgba(244,194,93,.2),transparent 24%),
        linear-gradient(145deg,#fffaf2 0%,#f6eee9 52%,#e8f7f2 100%)
}
.faq-section::after {
    content:"";
    position:absolute;
    right:-140px;
    bottom:-210px;
    width:470px;
    height:470px;
    border:1px solid rgba(22,104,103,.12);
    border-radius:50%;
    box-shadow:0 0 0 62px rgba(255,255,255,.22),0 0 0 124px rgba(22,104,103,.035)
}
.faq-shell {
    position:relative;
    z-index:1;
    max-width:1500px;
    margin:auto
}
.faq-heading {
    margin-bottom:38px
}
.faq-heading-copy {
    width:100%
}
.faq-kicker {
    margin:0 0 13px;
    color:#b85150;
    font-size:.8rem;
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase
}
.faq-heading-line {
    display:grid;
    grid-template-columns:minmax(480px,1.05fr) minmax(360px,.95fr);
    gap:clamp(34px,6vw,96px);
    align-items:end
}
.faq-heading h2 {
    max-width:720px;
    margin:0;
    color:#176869;
    font:700 clamp(3rem,5vw,5.2rem)/.96 "Fredoka",sans-serif
}
.faq-heading-line>p {
    max-width:650px;
    margin:0 0 7px;
    padding-left:25px;
    border-left:2px solid #ef9a75;
    color:#705d6b;
    font-size:1.05rem;
    line-height:1.7
}
.faq-columns {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    align-items:start
}
.faq-column {
    display:grid;
    gap:12px
}
.faq-item {
    overflow:hidden;
    border:1px solid rgba(23,104,105,.14);
    border-radius:20px;
    background:rgba(255,255,255,.74);
    box-shadow:0 10px 25px rgba(67,81,82,.055);
    transition:border-color .22s ease,box-shadow .22s ease,background .22s ease
}
.faq-item:hover {
    border-color:rgba(23,104,105,.3);
    box-shadow:0 14px 30px rgba(67,81,82,.09)
}
.faq-item.is-open {
    border-color:rgba(23,104,105,.28);
    background:#fff;
    box-shadow:0 17px 36px rgba(35,92,90,.1)
}
.faq-question {
    display:grid;
    width:100%;
    padding:20px 21px;
    grid-template-columns:1fr 42px;
    gap:18px;
    align-items:center;
    border:0;
    color:#483b4b;
    background:transparent;
    font:800 1rem/1.3 "Nunito",sans-serif;
    text-align:left;
    cursor:pointer
}
.faq-question span {
    display:block
}
.faq-question small {
    display:block;
    margin-bottom:5px;
    color:#b75552;
    font-size:.62rem;
    font-weight:1000;
    letter-spacing:.12em;
    text-transform:uppercase
}
.faq-question i {
    display:grid;
    width:42px;
    height:42px;
    place-items:center;
    border-radius:13px;
    color:#fff;
    background:#176869;
    font:400 1.45rem/1 "Nunito",sans-serif;
    font-style:normal;
    transition:transform .22s ease,background .22s ease
}
.faq-question[aria-expanded="true"] i {
    background:#ed9970;
    transform:rotate(180deg)
}
.faq-question:focus-visible {
    outline:3px solid rgba(244,194,93,.85);
    outline-offset:-4px;
    border-radius:18px
}
.faq-answer {
    padding:0 82px 22px 21px
}
.faq-answer p {
    margin:0;
    padding-top:17px;
    border-top:1px solid rgba(23,104,105,.12);
    color:#6e5c69;
    font-size:.91rem;
    line-height:1.68
}
.faq-answer:not([hidden]) {
    animation:faqReveal .24s ease both
}
@keyframes faqReveal {
    from {
        opacity:0;
        transform:translateY(-5px)
    }
    to {
        opacity:1;
        transform:none
    }
}
.faq-help-note {
    display:grid;
    margin-top:18px;
    padding:22px 27px;
    grid-template-columns:52px 1fr;
    gap:17px;
    align-items:center;
    border-radius:22px;
    color:#e8f5f1;
    background:linear-gradient(120deg,#145965,#176e68)
}
.faq-help-note>span {
    display:grid;
    width:52px;
    height:52px;
    place-items:center;
    border:2px solid #f3c564;
    border-radius:50%;
    color:#f3c564;
    font:900 1.4rem "Fredoka",sans-serif
}
.faq-help-note strong {
    color:#fff;
    font:700 1.2rem "Fredoka",sans-serif
}
.faq-help-note p {
    margin:4px 0 0;
    color:#d6eae6;
    line-height:1.5
}
@media(max-width:900px) {
    .faq-heading-line {
        grid-template-columns:1fr;
        gap:21px
    }
    .faq-heading-line>p {
        max-width:780px;
        margin:0
    }
    .faq-columns {
        grid-template-columns:1fr
    }
    .faq-column {
        gap:10px
    }
    .faq-column+.faq-column {
        margin-top:-2px
    }
}
@media(max-width:620px) {
    .faq-section {
        padding:66px 14px
    }
    .faq-heading {
        margin-bottom:25px
    }
    .faq-heading h2 {
        font-size:2.75rem
    }
    .faq-heading-line {
        gap:18px
    }
    .faq-heading-line>p {
        padding-left:17px;
        font-size:.93rem
    }
    .faq-question {
        padding:17px 15px;
        grid-template-columns:1fr 38px;
        gap:12px;
        font-size:.94rem
    }
    .faq-question i {
        width:38px;
        height:38px
    }
    .faq-answer {
        padding:0 15px 19px
    }
    .faq-answer p {
        font-size:.86rem
    }
    .faq-help-note {
        padding:19px 16px;
        grid-template-columns:43px 1fr
    }
    .faq-help-note>span {
        width:43px;
        height:43px
    }
}
@media(prefers-reduced-motion:reduce) {
    .faq-item,.faq-question i,.faq-answer:not([hidden]) {
        animation:none;
        transition:none
    }
}
.live-section {
    padding-top:72px;
    padding-bottom:72px
}
.live-heading {
    display:grid;
    max-width:none;
    grid-template-columns:minmax(390px,.85fr) minmax(520px,1.15fr);
    gap:56px;
    align-items:end;
    margin-bottom:28px
}
.live-heading h2 {
    max-width:680px
}
.live-heading-copy {
    padding-left:28px;
    border-left:2px solid rgba(192,93,75,.42)
}
.live-heading-copy p {
    margin:0;
    color:#513f4d;
    font-size:.98rem;
    line-height:1.62
}
.live-heading-copy p+p {
    margin-top:10px
}
.live-orientation {
    margin-bottom:22px
}
.live-orientation article {
    min-height:0;
    padding:18px 20px
}
.live-orientation p {
    font-size:.86rem;
    line-height:1.46
}
.live-layout {
    display:grid;
    grid-template-columns:minmax(690px,2fr) minmax(330px,.82fr);
    gap:24px;
    align-items:stretch
}
.live-content,.live-sidebar {
    min-width:0;
    max-width:100%
}
.live-grid {
    display:grid;
    width:100%;
    height:100%;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:repeat(2,minmax(0,1fr));
    gap:14px
}
.live-card {
    min-width:0;
    height:100%
}
.live-card button {
    display:grid;
    width:100%;
    height:100%;
    min-height:0;
    padding:0 0 12px;
    grid-template-rows:auto minmax(38px,auto) 18px;
    align-content:start
}
.live-card img {
    box-sizing:border-box;
    width:100%;
    aspect-ratio:5/4;
    padding:8px;
    object-fit:contain;
    object-position:center;
    background:linear-gradient(145deg,#102d4d,#0b5d65)
}
.live-card strong {
    display:flex;
    min-height:38px;
    padding:9px 12px 3px;
    align-items:center;
    font-size:.9rem;
    line-height:1.15
}
.live-card span {
    padding:0 12px;
    font-size:.74rem;
    line-height:18px
}
.live-sidebar {
    position:static;
    display:flex;
    height:100%;
    min-height:0;
    padding:23px;
    box-sizing:border-box;
    flex-direction:column
}
.live-category-head {
    margin:0 0 12px;
    padding:0 0 15px
}
.live-category-head h3 {
    font-size:2rem
}
.live-category-head p:last-child {
    font-size:.88rem;
    line-height:1.48
}
.live-about {
    margin-top:13px;
    padding:10px 13px
}
.live-tabs {
    margin-top:auto;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px
}
.live-tab {
    padding:10px 8px;
    font-size:.78rem
}
.live-tabs .live-tab:last-child {
    width:calc(50% - 4px)
}
.live-category-details {
    margin:0 0 12px;
    padding:14px 16px;
    font-size:.84rem;
    line-height:1.48
}
.live-source-index {
    margin-top:22px
}
.live-source-index>summary {
    padding:17px 21px
}
.live-guide-body {
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding:0 14px 14px;
    gap:10px
}
.live-guide-body>section {
    padding:17px
}
.live-guide-body h3 {
    margin-bottom:7px;
    font-size:1.25rem
}
.live-guide-body p {
    font-size:.88rem;
    line-height:1.5
}
@media(max-width:1180px) {
    .live-heading {
        grid-template-columns:1fr;
        gap:20px
    }
    .live-heading-copy {
        max-width:920px
    }
    .live-layout {
        grid-template-columns:minmax(0,1fr)
    }
    .live-sidebar {
        height:auto
    }
    .live-tabs {
        display:flex;
        max-width:100%;
        overflow-x:auto;
        margin-top:0
    }
    .live-tab {
        flex:0 0 160px
    }
    .live-tabs .live-tab:last-child {
        width:auto
    }
    .live-grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
        grid-template-rows:repeat(2,auto)
    }
    .live-card button {
        height:100%
    }
}
@media(max-width:760px) {
    .live-heading-copy {
        padding-left:18px
    }
    .live-orientation {
        grid-template-columns:1fr;
        gap:10px
    }
    .live-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-template-rows:repeat(3,auto)
    }
    .live-guide-body {
        grid-template-columns:1fr
    }
}
@media(max-width:430px) {
    .live-section {
        padding-top:56px;
        padding-bottom:56px
    }
    .live-heading h2 {
        font-size:2.45rem
    }
    .live-grid {
        grid-template-columns:1fr;
        grid-template-rows:none
    }
    .live-card img {
        aspect-ratio:5/4
    }
    .live-card strong {
        min-height:0
    }
    .live-sidebar {
        padding:18px
    }
    .live-source-index>summary {
        padding:16px;
        flex-direction:column;
        gap:4px
    }
}
.live-sidebar {
    justify-content:center;
    gap:24px
}
.live-sidebar .live-category-head {
    margin:0;
    padding-bottom:0;
    border-bottom:0
}
.live-sidebar .live-tabs {
    margin-top:0;
    padding-top:22px;
    border-top:1px solid rgba(255,255,255,.22)
}
@media(max-width:1180px) {
    .live-sidebar {
        justify-content:flex-start;
        gap:18px
    }
    .live-sidebar .live-tabs {
        padding-top:17px
    }
}
.site-footer {
    padding:70px clamp(22px,5vw,78px) 24px;
    color:#dcefeb;
    background:radial-gradient(circle at 12% 4%,rgba(77,199,179,.16),transparent 30%),linear-gradient(135deg,#102f49,#105f62)
}
.footer-shell {
    display:grid;
    max-width:1500px;
    margin:auto;
    grid-template-columns:minmax(250px,.72fr) minmax(620px,1.28fr);
    gap:clamp(48px,7vw,110px)
}
.footer-brand-block {
    position:relative
}
.footer-logo {
    display:inline-flex;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent
}
.footer-logo img {
    display:block;
    width:190px;
    height:auto
}
.footer-brand-block p {
    max-width:390px;
    margin:22px 0 17px;
    color:#cde3df;
    line-height:1.62
}
.footer-age {
    display:grid;
    width:50px;
    height:50px;
    place-items:center;
    border:2px solid #f3c56d;
    border-radius:50%;
    color:#f3c56d;
    font-weight:1000
}
.footer-nav {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:36px
}
.footer-nav>div {
    display:flex;
    flex-direction:column;
    align-items:flex-start
}
.footer-nav h2 {
    margin:0 0 17px;
    color:#f3c56d;
    font:700 1.15rem "Fredoka",sans-serif
}
.footer-nav a {
    margin:0 0 10px;
    color:#e8f4f1;
    text-decoration:none;
    font-size:.9rem;
    font-weight:800
}
.footer-nav a:hover,.footer-nav a:focus-visible {
    color:#f3c56d;
    text-decoration:underline;
    text-underline-offset:4px
}
.footer-bottom {
    display:flex;
    max-width:1500px;
    margin:46px auto 0;
    padding-top:21px;
    border-top:1px solid rgba(255,255,255,.16);
    justify-content:space-between;
    gap:25px
}
.footer-bottom p {
    margin:0;
    color:#bcd8d4;
    font-size:.82rem
}
@media(max-width:900px) {
    .footer-shell {
        grid-template-columns:1fr
    }
    .footer-nav {
        gap:24px
    }
}
@media(max-width:620px) {
    .site-footer {
        padding:52px 18px 22px
    }
    .footer-shell {
        gap:38px
    }
    .footer-nav {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .footer-nav>div:last-child {
        grid-column:1/-1
    }
    .footer-bottom {
        align-items:flex-start;
        flex-direction:column;
        margin-top:35px
    }
    .footer-logo img {
        width:165px
    }
}
.legal-page {
    min-height:100vh;
    background:radial-gradient(circle at 90% 9%,rgba(95,207,188,.2),transparent 25%),linear-gradient(145deg,#fff8ef,#f5ece8 52%,#e6f5f0);
    color:#574756
}
.legal-page .site-header {
    position:sticky;
    top:0
}
.legal-main {
    padding:88px clamp(20px,5vw,76px) 92px
}
.legal-shell {
    max-width:1260px;
    margin:auto
}
.legal-hero {
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
    gap:56px;
    align-items:end;
    margin-bottom:34px
}
.legal-kicker {
    margin:0 0 12px;
    color:#b6534a;
    font-size:.78rem;
    font-weight:1000;
    letter-spacing:.13em;
    text-transform:uppercase
}
.legal-hero h1 {
    margin:0;
    color:#176668;
    font:700 clamp(3rem,5vw,5.2rem)/.96 "Fredoka",sans-serif
}
.legal-intro {
    padding-left:26px;
    border-left:2px solid #ed9873
}
.legal-intro p {
    margin:0;
    line-height:1.7
}
.legal-intro p+p {
    margin-top:12px
}
.legal-updated {
    display:inline-block;
    margin-top:16px;
    color:#176668;
    font-size:.8rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em
}
.legal-layout {
    display:grid;
    grid-template-columns:260px minmax(0,1fr);
    gap:28px;
    align-items:start
}
.legal-index {
    position:sticky;
    top:110px;
    padding:23px;
    border:1px solid rgba(23,102,104,.15);
    border-radius:22px;
    background:rgba(255,255,255,.7)
}
.legal-index h2 {
    margin:0 0 13px;
    color:#176668;
    font:700 1.25rem "Fredoka",sans-serif
}
.legal-index a {
    display:block;
    padding:8px 0;
    color:#715766;
    text-decoration:none;
    font-size:.87rem;
    font-weight:800
}
.legal-index a:hover,.legal-index a:focus-visible {
    color:#b6534a
}
.legal-content {
    display:grid;
    gap:14px
}
.legal-content section {
    padding:27px 30px;
    border:1px solid rgba(23,102,104,.13);
    border-radius:22px;
    background:rgba(255,255,255,.78);
    box-shadow:0 12px 27px rgba(56,82,80,.06)
}
.legal-content h2 {
    margin:0 0 11px;
    color:#176668;
    font:700 1.55rem "Fredoka",sans-serif
}
.legal-content h3 {
    margin:18px 0 7px;
    color:#5b4052;
    font-size:1rem
}
.legal-content p,.legal-content li {
    color:#655461;
    line-height:1.68
}
.legal-content p {
    margin:0
}
.legal-content p+p {
    margin-top:10px
}
.legal-content ul {
    margin:10px 0 0;
    padding-left:20px
}
.legal-note {
    border-left:4px solid #f0c36c!important;
    background:linear-gradient(135deg,#fff8e9,#eff8f3)!important
}
.legal-page .primary-nav {
    gap:16px
}
.legal-page .primary-nav a {
    font-size:.78rem
}
@media(max-width:1000px) {
    .legal-hero {
        grid-template-columns:1fr;
        gap:23px
    }
    .legal-layout {
        grid-template-columns:1fr
    }
    .legal-index {
        position:static;
        display:flex;
        flex-wrap:wrap;
        gap:5px 18px
    }
    .legal-index h2 {
        flex:0 0 100%
    }
    .legal-index a {
        padding:4px 0
    }
    .legal-page .primary-nav {
        max-height:calc(100vh - 90px);
        overflow-y:auto
    }
}
@media(max-width:620px) {
    .legal-main {
        padding:62px 14px
    }
    .legal-hero h1 {
        font-size:2.7rem
    }
    .legal-intro {
        padding-left:18px
    }
    .legal-content section {
        padding:22px 18px
    }
    .legal-index {
        padding:20px
    }
    .legal-page .header-play {
        display:inline-flex
    }
}
