*,
*::before,
*::after {
  box-sizing:border-box;
  margin:0;
  padding:0
}

html {
  scroll-behavior:smooth
}

body {
  background:#1f0d21;
  color:#FFFFFF;
  font-family:'Rubik',sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  --dm8mq4:#1f0d21;
  --hd8mh5:#D946EF
}

a {
  color:#D946EF;
  text-decoration:none;
  transition:color 0.15s
}

img {
  max-width:100%;
  display:block
}

.container {
  max-width:1200px;
  margin:0 auto;
  padding:0 24px
}

main {
  max-width:1200px;
  width:100%;
  box-sizing:border-box;
  margin:0 auto;
  padding:32px 24px;
  display:grid;
  gap:40px;
  overflow-wrap:break-word;
  word-wrap:break-word
}

main > section,
main > nav,
main > div {
  max-width:100%;
  overflow:hidden;
  box-sizing:border-box
}

@media (prefers-reduced-motion:no-preference) {
  .unveil {
    opacity:0;
    transform:translateY(24px);
    transition:opacity 0.5s ease,transform 0.5s ease
  }
  .unveil.component {
    opacity:1;
    transform:translateY(0)
  }
}

header {
  background:linear-gradient(90deg,#2d1132 0%,#401547 100%);
  padding:0 24px;
  position:sticky;
  top:0;
  z-index:100;
  border-bottom:1px solid rgba(255,255,255,0.06);
  width:100%;
  box-sizing:border-box
}

.header-box {
  display:flex;
  justify-content:space-between;
  align-items:center;
  height:72px;
  max-width:1200px;
  margin:0 auto;
  gap:24px
}

.node-brand {
  font-weight:900;
  font-size:22px;
  color:#D946EF;
  text-decoration:none;
  font-family:'SF Mono','JetBrains Mono',monospace;
  flex-shrink:0
}

.node-brand img {
  max-height:44px;
  width:auto;
  max-width:180px;
  object-fit:contain
}

.piece-navbar {
  display:flex;
  gap:20px;
  align-items:center
}

.piece-navbar a {
  color:#D1D5DB;
  font-size:16px;
  text-decoration:none;
  font-weight:600;
  transition:color 0.15s
}

.piece-navbar a:hover {
  color:#fff
}

.hamburger-play {
  display:none;
  background:none;
  border:1px solid rgba(255,255,255,0.15);
  border-radius:8px;
  color:#fff;
  font-size:20px;
  width:40px;
  height:40px;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  flex-shrink:0
}

.phoneonly-menu {
  display:none;
  position:fixed;
  inset:0;
  background:linear-gradient(90deg,#2d1132 0%,#401547 100%);
  z-index:200;
  overflow-y:auto;
  opacity:0;
  visibility:hidden;
  transition:opacity 0.25s ease,visibility 0.25s ease
}

.phoneonly-menu.open {
  opacity:1;
  visibility:visible
}

.phoneonly-menu-box {
  padding:20px 24px 32px;
  display:flex;
  flex-direction:column;
  min-height:100%
}

.phoneonly-navbar-link {
  display:block;
  color:#D1D5DB;
  font-size:17px;
  font-weight:600;
  padding:12px 0;
  border-bottom:1px solid rgba(255,255,255,0.06);
  text-decoration:none;
  transition:color 0.15s
}

.phoneonly-navbar-link:hover {
  color:#fff
}

.header-place {
  display:flex;
  gap:10px;
  margin-left:auto;
  flex-shrink:0
}

.language-bit {
  position:relative;
  display:inline-block
}

.language-bit > summary {
  list-style:none;
  cursor:pointer;
  color:#9CA3AF;
  font-size:13px;
  user-select:none;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 8px;
  border-radius:8px;
  transition:color 0.15s,background 0.15s
}

.language-bit > summary::-webkit-details-marker {
  display:none
}

.language-bit > summary::marker {
  content:''
}

.language-bit[open] > summary,
.language-bit > summary:hover {
  color:#fff;
  background:rgba(255,255,255,0.06)
}

.language-factor {
  flex-shrink:0;
  opacity:0.85
}

.language-caret {
  font-size:9px;
  line-height:1;
  display:inline-block;
  transition:transform 0.18s ease;
  opacity:0.8
}

.language-bit[open] .language-caret {
  transform:rotate(180deg)
}

.language-menu {
  position:absolute;
  right:0;
  top:100%;
  margin-top:8px;
  background:#15161c;
  border:1px solid rgba(255,255,255,0.12);
  border-radius:12px;
  padding:6px;
  min-width:168px;
  z-index:200;
  box-shadow:0 12px 32px rgba(0,0,0,0.5);
  animation:sfLangIn 0.15s ease
}

@keyframes sfLangIn {
  from {
    opacity:0;
    transform:translateY(-6px)
  }
  to {
    opacity:1;
    transform:translateY(0)
  }
}

.language-menu .language-setting {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:9px 14px;
  color:#D1D5DB;
  text-decoration:none;
  font-size:13px;
  border-radius:8px;
  white-space:nowrap;
  transition:background 0.12s,color 0.12s
}

.language-menu .language-setting:hover {
  background:rgba(255,255,255,0.08);
  color:#fff
}

.language-menu .language-setting-on {
  color:#D946EF;
  font-weight:700
}

.language-setting-portion {
  color:#D946EF;
  font-size:12px;
  flex-shrink:0
}

.chunk-partbit {
  background:#D946EF;
  color:#fff;
  border:1px solid #D946EF;
  border-radius:8px;
  padding:0 30px;
  height:39px;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  letter-spacing:0.5px;
  white-space:nowrap;
  text-decoration:none;
  transition:opacity 0.15s,transform 0.15s
}

.chunk-partbit:hover {
  opacity:0.9;
  transform:translateY(-1px)
}

.chunk-bit {
  background:transparent;
  color:#fff;
  border:1px solid rgba(255,255,255,0.25);
  border-radius:8px;
  padding:0 30px;
  height:39px;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  letter-spacing:0.5px;
  white-space:nowrap;
  text-decoration:none;
  transition:all 0.15s
}

.chunk-bit:hover {
  background:rgba(255,255,255,0.12);
  border-color:rgba(255,255,255,0.4)
}

.spotlight {
  position:relative;
  overflow:hidden;
  min-height:340px;
  width:100%
}

.spotlight-slidepage {
  position:relative;
  min-height:340px;
  overflow:hidden
}

.spotlight-slidepage:not(:has(.spotlight-img)) {
  background:linear-gradient(135deg,#1f0d21 0%,#D946EF18 50%,#1f0d21 100%)
}

.spotlight-main {
  padding:52px 56px;
  display:flex;
  flex-direction:column;
  gap:16px;
  justify-content:center;
  max-width:50%;
  position:relative;
  z-index:2
}

.spotlight-subheading {
  font-size:17px;
  font-weight:700;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:#D946EF
}

.spotlight-caption {
  font-size:clamp(30px,4.5vw,56px);
  font-weight:900;
  line-height:1.0;
  color:#fff;
  text-transform:uppercase;
  letter-spacing:-1px
}

.spotlight-img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:right center
}

.spotlight-softshow {
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(to right,rgba(0,0,0,0.92) 0%,rgba(0,0,0,0.78) 32%,rgba(0,0,0,0.48) 52%,rgba(0,0,0,0.12) 72%,transparent 90%),linear-gradient(to top,rgba(0,0,0,0.72) 0%,rgba(0,0,0,0.12) 35%,transparent 55%)
}

.spotlight-slidepage:not(:has(.spotlight-img)) .spotlight-softshow {
  background:linear-gradient(to right,rgba(0,0,0,0.32) 0%,transparent 60%)
}

.spotlight-part {
  position:absolute;
  bottom:16px;
  left:0;
  right:0;
  display:flex;
  justify-content:center;
  gap:6px;
  z-index:10
}

.spotlight-detail {
  width:8px;
  height:8px;
  border-radius:4px;
  border:none;
  background:rgba(255,255,255,0.35);
  cursor:pointer;
  padding:0;
  transition:width 0.25s,background 0.25s
}

.spotlight-detail.active {
  width:24px;
  background:#D946EF
}

.spotlight-cta {
  margin-top:12px;
  padding:16px 48px !important;
  font-size:16px !important;
  font-weight:800 !important
}

.spotlight-arr {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:44px;
  height:44px;
  border-radius:50%;
  border:none;
  background:rgba(0,0,0,0.4);
  color:#fff;
  font-size:26px;
  line-height:1;
  cursor:pointer;
  z-index:11;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  pointer-events:none;
  box-shadow:0 2px 10px rgba(0,0,0,0.35);
  transition:opacity 0.25s,background 0.25s;
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px)
}

.spotlight:hover .spotlight-arr,
.spotlight:focus-within .spotlight-arr {
  opacity:1;
  pointer-events:auto
}

.spotlight-arr:hover,
.spotlight-arr:focus-visible {
  background:#D946EF;
  color:var(--q859dp,#fff);
  outline:none
}

.spotlight-arr-prev {
  left:16px
}

.spotlight-arr-next {
  right:16px
}

.spotlight-detail:focus-visible {
  outline:2px solid #D946EF;
  outline-offset:2px
}

.spotlight-piece {
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  height:3px;
  background:rgba(255,255,255,0.12);
  z-index:10
}

.spotlight-piece-meter {
  display:block;
  height:100%;
  width:100%;
  transform:scaleX(0);
  transform-origin:left;
  background:#D946EF;
  animation:heroProg 5s linear forwards
}

@keyframes heroProg {
  from {
    transform:scaleX(0)
  }
  to {
    transform:scaleX(1)
  }
}

.spotlight-slidepage.detailbox .spotlight-main > * {
  animation:heroIn 0.5s ease both
}

.spotlight-slidepage.detailbox .spotlight-main > *:nth-child(1) {
  animation-delay:0.04s
}

.spotlight-slidepage.detailbox .spotlight-main > *:nth-child(2) {
  animation-delay:0.12s
}

.spotlight-slidepage.detailbox .spotlight-main > *:nth-child(3) {
  animation-delay:0.20s
}

@keyframes heroIn {
  from {
    opacity:0;
    transform:translateY(16px)
  }
  to {
    opacity:1;
    transform:translateY(0)
  }
}

@media (prefers-reduced-motion:reduce) {
  .spotlight-piece {
    display:none
  }
  .spotlight-arr {
    transition:none
  }
  .spotlight-slidepage .spotlight-main > * {
    animation:none !important
  }
}

.spotlight[data-field="glass"]::after,
.spotlight[data-field="vibrant"]::after,
.spotlight[data-field="lux"]::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1
}

.spotlight[data-field="glass"]::after {
  background:radial-gradient(120% 80% at 85% 0%,var(--l9494e,#D946EF26) 0%,transparent 55%)
}

.spotlight[data-field="vibrant"]::after {
  background:radial-gradient(90% 90% at 90% 10%,var(--l9494e,#D946EF33) 0%,transparent 60%),radial-gradient(70% 70% at 0% 100%,transparent 40%,var(--l9494e,#D946EF1f) 100%)
}

.spotlight[data-field="lux"]::after {
  box-shadow:inset 0 0 140px rgba(0,0,0,0.65);
  background:none
}

@media (prefers-reduced-motion:no-preference) {
  .spotlight[data-field="glass"] .spotlight-img,
  .spotlight[data-field="vibrant"] .spotlight-img {
    animation:sfKenBurns 18s ease-in-out infinite alternate;
    transform-origin:center;
    will-change:transform
  }
}

@keyframes sfKenBurns {
  from {
    transform:scale(1)
  }
  to {
    transform:scale(1.07)
  }
}

body {
  --q859dp:#0b0d12;
  --iuv5hl:#d946ef
}

.module-caption {
  font-size:30px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.5px;
  margin-bottom:22px;
  line-height:1.15
}

.sheet-unitpart.module-caption {
  font-size:42px;
  font-weight:800;
  letter-spacing:0.3px;
  margin-bottom:0;
  text-transform:none;
  overflow-wrap:break-word;
  word-wrap:break-word;
  line-height:1.12
}

.sheet-unitpart.module-caption + section {
  margin-top:0
}

.pointpart-point {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px
}

.tabbar {
  display:flex;
  gap:4px;
  align-items:center;
  width:max-content;
  max-width:100%;
  margin:0 auto 24px;
  padding:5px;
  background:var(--g95mw6,rgba(255,255,255,0.05));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.08));
  border-radius:50px;
  overflow-x:auto;
  scrollbar-width:none;
  list-style:none
}

.tabbar::-webkit-scrollbar {
  display:none
}

.tabbar > li {
  flex:none;
  display:flex
}

.tabbar a.tablink {
  display:inline-flex;
  align-items:center;
  gap:6px;
  text-decoration:none
}

.tablink {
  border:none;
  background:transparent;
  color:#FFFFFF;
  opacity:0.65;
  font:inherit;
  font-size:14px;
  font-weight:700;
  padding:9px 22px;
  border-radius:50px;
  cursor:pointer;
  white-space:nowrap;
  transition:background .15s,color .15s
}

.tablink:hover {
  opacity:1
}

.tablink[data-grid="on"] {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

.nogame.nogame,
[data-last][data-last] {
  display:none !important
}

.area > [data-first] {
  display:none
}

.area > [data-first="on"] {
  display:block
}

.area:not([data-quick="js"]) > [data-first]:target {
  display:block
}

.area:not(:has(> [data-first]:target)):not(:has(> [data-first="on"])) > [data-first]:first-child {
  display:block
}

section:has(.area:not([data-quick="js"]) > [data-first]:target) .tabbar .tablink[data-grid="on"] {
  background:transparent;
  color:#FFFFFF;
  opacity:0.65
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(1):target) .tabbar > li:nth-child(1) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(2):target) .tabbar > li:nth-child(2) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(3):target) .tabbar > li:nth-child(3) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(4):target) .tabbar > li:nth-child(4) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(5):target) .tabbar > li:nth-child(5) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(6):target) .tabbar > li:nth-child(6) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(7):target) .tabbar > li:nth-child(7) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(8):target) .tabbar > li:nth-child(8) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(9):target) .tabbar > li:nth-child(9) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(10):target) .tabbar > li:nth-child(10) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(11):target) .tabbar > li:nth-child(11) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

section:has(.area:not([data-quick="js"]) > [data-first]:nth-of-type(12):target) .tabbar > li:nth-child(12) > .tablink {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  opacity:1
}

@supports not selector(:has(*)) {
  .area > [data-first] {
    display:block
  }
}

@media (max-width:640px) {
  .area > [data-first] .pointpart-point,
  .area > [data-first] .gamesection-point {
    grid-template-columns:repeat(2,1fr)
  }
}

.onegame-node,
.gamesection-node,
.aspect-node {
  border-radius:var(--bq4cwu,16px);
  overflow:hidden;
  background:var(--g95mw6,rgba(255,255,255,0.04));
  transition:transform 0.25s,box-shadow 0.25s;
  display:flex;
  flex-direction:column;
  text-decoration:none;
  position:relative
}

.onegame-node:hover,
.gamesection-node:hover,
.aspect-node:hover {
  transform:scale(1.05);
  box-shadow:var(--t5u0x0,0 16px 40px rgba(0,0,0,0.5)),0 0 0 2px #D946EF40;
  z-index:2
}

.machine-miniimg {
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  flex-shrink:0
}

.machine-miniimg img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  transition:transform 0.3s
}

.onegame-node:hover .machine-miniimg img,
.gamesection-node:hover .machine-miniimg img {
  transform:scale(1.08)
}

.machine-footpart {
  padding:9px 10px;
  background:var(--g7uvfs,#D946EF);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  text-align:center;
  flex:1 1 auto
}

.machine-footpart-label {
  color:var(--q859dp,#fff);
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:0.3px;
  text-shadow:0 1px 2px rgba(0,0,0,0.35);
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical
}

.machine-footpart-studio {
  color:rgba(11,13,18,0.82);
  font-size:9.5px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:0.5px
}

.machine-node {
  position:relative
}

.machine-aspect {
  transition:opacity .18s ease
}

.machine-node:hover .machine-floatbit {
  opacity:1 !important
}

.machine-node:hover .machine-aspect {
  opacity:0
}

.machine-veil {
  position:absolute;
  left:0;
  right:0;
  top:0;
  bottom:0;
  background:rgba(0,0,0,0.78);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  opacity:0;
  transition:opacity 0.25s;
  padding:12px;
  pointer-events:none
}

.machine-node:hover .machine-veil {
  opacity:1
}

.machine-veil-play {
  padding:9px 28px;
  border-radius:8px;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
  display:block;
  text-align:center;
  width:78%;
  cursor:pointer;
  border:none;
  transition:transform 0.15s
}

.machine-veil-play:hover {
  transform:scale(1.03)
}

.machine-veil-playbtn {
  background:#D946EF;
  color:var(--q859dp,#13151b)
}

.machine-veil-area {
  background:rgba(255,255,255,0.12);
  color:#fff;
  border:1px solid rgba(255,255,255,0.25)
}

.module-miniimg {
  display:flex;
  align-items:center;
  justify-content:center;
  aspect-ratio:16/10;
  padding:16px 18px;
  background:var(--calzrr,rgba(0,0,0,0.18));
  overflow:hidden;
  flex-shrink:0
}

.module-miniimg img {
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  transition:transform 0.25s
}

.aspect-node:hover .module-miniimg img {
  transform:scale(1.06)
}

.module-emptyimg {
  color:#fff;
  font-size:30px;
  font-weight:900;
  opacity:0.85
}

.vendorslider-entity {
  position:relative
}

.vendorslider-rail {
  display:flex;
  gap:14px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  padding:4px 2px
}

.vendorslider-rail::-webkit-scrollbar {
  display:none
}

.vendorslider-rail > .aspect-node {
  flex:0 0 calc((100% - 56px) / 5);
  scroll-snap-align:start
}

.vendorslider-arr {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:40px;
  height:40px;
  border-radius:50%;
  border:1px solid var(--lntnhz,rgba(255,255,255,0.12));
  background:var(--g95mw6,rgba(20,22,30,0.9));
  color:#fff;
  font-size:22px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:3;
  transition:border-color .15s,background .15s,box-shadow .15s;
  box-shadow:0 4px 14px rgba(0,0,0,0.35)
}

.vendorslider-arr:hover {
  border-color:#D946EF;
  background:#D946EF1f
}

.vendorslider-prev {
  left:-8px
}

.vendorslider-next {
  right:-8px
}

.featured-bandpart {
  position:relative;
  margin-top:18px
}

.featured-rail {
  display:flex;
  gap:18px;
  overflow-x:auto;
  scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  -ms-overflow-style:none;
  padding:6px 0 14px;
  scroll-snap-type:x proximity
}

.featured-rail::-webkit-scrollbar {
  display:none
}

.featured-rail[data-target] {
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 44px);
  mask-image:linear-gradient(90deg,transparent 0,#000 44px)
}

.featured-rail[data-slot] {
  -webkit-mask-image:linear-gradient(270deg,transparent 0,#000 44px);
  mask-image:linear-gradient(270deg,transparent 0,#000 44px)
}

.featured-rail[data-target][data-slot] {
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 44px,#000 calc(100% - 44px),transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 44px,#000 calc(100% - 44px),transparent 100%)
}

.featured-node {
  cursor:pointer;
  position:relative;
  flex:0 0 216px;
  scroll-snap-align:start;
  display:flex;
  flex-direction:column;
  gap:10px;
  background:var(--g95mw6,rgba(255,255,255,0.04));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.08));
  border-radius:var(--bq4cwu,16px);
  padding:10px;
  transition:transform .22s cubic-bezier(.22,.68,.34,1.18),border-color .22s ease,box-shadow .22s ease
}

.featured-node:hover {
  transform:translateY(-6px);
  border-color:#D946EF8c;
  box-shadow:0 18px 36px rgba(0,0,0,0.45),0 0 0 1px #D946EF38,0 12px 34px #D946EF24
}

.featured-brand {
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  height:116px;
  background:radial-gradient(130px 84px at 50% 62%,#D946EF21,transparent 72%),var(--calzrr,rgba(0,0,0,0.25));
  border:1px solid rgba(255,255,255,0.06);
  border-radius:calc(var(--bq4cwu,16px) - 6px);
  padding:16px 20px
}

.featured-brand::before {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(150px 96px at 50% 62%,#D946EF4d,transparent 74%);
  opacity:0;
  transition:opacity .25s ease;
  pointer-events:none
}

.featured-brand::after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:44%;
  background:linear-gradient(180deg,rgba(255,255,255,0.07),rgba(255,255,255,0));
  pointer-events:none
}

.featured-node:hover .featured-brand::before {
  opacity:1
}

.featured-brand img {
  position:relative;
  z-index:1;
  max-height:58px;
  max-width:100%;
  width:auto;
  filter:drop-shadow(0 6px 14px rgba(0,0,0,0.55));
  transition:transform .25s ease
}

.featured-node:hover .featured-brand img {
  transform:scale(1.07)
}

.featured-label {
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  border-radius:calc(var(--bq4cwu,16px) - 8px);
  font-size:13px;
  font-weight:800;
  letter-spacing:0.02em;
  text-align:center;
  padding:9px 12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.28),0 3px 10px rgba(0,0,0,0.3)
}

.featured-navbar {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:44px;
  height:44px;
  border-radius:50%;
  background:rgba(255,255,255,0.06);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,0.16);
  color:#FFFFFF;
  cursor:pointer;
  padding:0;
  box-shadow:0 8px 20px rgba(0,0,0,0.45);
  transition:border-color .2s ease,background .2s ease;
  z-index:2
}

.featured-navbar::before {
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:10px;
  height:10px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor
}

.featured-navbar-backbtn {
  left:-14px
}

.featured-navbar-backbtn::before {
  transform:translate(-30%,-50%) rotate(135deg)
}

.featured-navbar-aheadbit {
  right:-14px
}

.featured-navbar-aheadbit::before {
  transform:translate(-70%,-50%) rotate(-45deg)
}

.featured-navbar:hover {
  border-color:#D946EFcc;
  background:#D946EF29
}

.featured-navbar:active {
  transform:translateY(-50%) scale(.94)
}

.featured-rail:not([data-target]) ~ .featured-navbar-backbtn {
  display:none
}

.featured-rail:not([data-slot]) ~ .featured-navbar-aheadbit {
  display:none
}

@media (max-width:640px) {
  .featured-rail {
    display:grid;
    grid-auto-flow:column;
    grid-template-rows:repeat(2,auto);
    grid-auto-columns:calc(50% - 7px);
    gap:14px
  }
  .featured-rail[data-target],
  .featured-rail[data-slot],
  .featured-rail[data-target][data-slot] {
    -webkit-mask-image:none;
    mask-image:none
  }
  .featured-node {
    flex:none;
    width:auto
  }
  .featured-brand {
    height:92px;
    padding:12px 14px
  }
  .featured-brand img {
    max-height:46px
  }
  .featured-navbar {
    width:38px;
    height:38px
  }
  .featured-navbar-backbtn {
    left:-6px
  }
  .featured-navbar-aheadbit {
    right:-6px
  }
}

.pointpart-cardbits {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),380px));
  justify-content:center;
  gap:18px
}

.pointpart-node-2 {
  display:flex;
  flex-direction:column;
  border-radius:var(--bq4cwu,16px);
  overflow:hidden;
  background:var(--g95mw6,rgba(255,255,255,0.03));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.08));
  box-shadow:var(--qf11yg,none);
  transition:transform 0.25s,box-shadow 0.25s
}

.pointpart-node-2:hover {
  transform:translateY(-4px);
  box-shadow:var(--t5u0x0,0 16px 40px rgba(0,0,0,0.5))
}

.pointpart-pic {
  position:relative;
  aspect-ratio:16/11;
  background:linear-gradient(135deg,#D946EF33,rgba(0,0,0,0.35));
  overflow:hidden
}

.pointpart-pic img {
  width:100%;
  height:100%;
  object-fit:cover;
  display:block
}

.pointpart-pic::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,transparent 62%,var(--g95mw6,rgba(15,17,24,0.96)) 100%)
}

.pointpart-inner {
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:8px;
  padding:16px 18px 22px;
  margin-top:-2px
}

.pointpart-head {
  font-size:13px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#D946EF
}

.pointpart-amount {
  font-size:18px;
  font-weight:800;
  color:#FFFFFF;
  line-height:1.35
}

.pointpart-dividerpart {
  width:64%;
  height:1px;
  background:var(--lntnhz,rgba(255,255,255,0.12));
  margin:2px 0
}

.pointpart-sub {
  font-size:12px;
  color:#9CA3AF
}

.pointpart-cta {
  margin-top:10px;
  padding:11px 32px;
  font-weight:700;
  border-radius:999px
}

.storebox {
  text-align:center
}

.storebox .module-caption,
.storebox .sheet-unitpart {
  font-size:clamp(30px,4.5vw,44px);
  margin-bottom:8px
}

.appshow-brand {
  margin:6px auto 22px;
  max-width:440px
}

.appshow-brand img {
  width:100%;
  height:auto;
  object-fit:contain;
  max-height:220px;
  filter:drop-shadow(0 0 26px #D946EF2b)
}

.appshow-metrics {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin:0 auto 24px
}

.appshow-stat {
  min-width:116px;
  padding:15px 18px;
  border-radius:var(--bq4cwu,14px);
  background:var(--g95mw6,rgba(255,255,255,0.03));
  border:1px solid #D946EF80;
  display:flex;
  flex-direction:column;
  gap:3px;
  align-items:center;
  justify-content:center
}

.appshow-stat-entity {
  font-size:17px;
  font-weight:800;
  color:#D946EF
}

.appshow-stat-point {
  font-size:12px;
  color:#9CA3AF
}

.appshow-stamps {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px
}

.appshow-flag {
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 18px;
  border-radius:11px;
  background:#fff;
  color:#000;
  text-decoration:none;
  min-width:168px;
  transition:opacity .15s,transform .15s
}

.appshow-flag:hover {
  opacity:.92;
  transform:translateY(-2px)
}

.appshow-flag-pic {
  display:inline-flex
}

.appshow-flag-pic svg {
  display:block
}

.appshow-flag-tx {
  display:flex;
  flex-direction:column;
  line-height:1.15;
  text-align:left
}

.appshow-flag-chunk {
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.4px
}

.appshow-flag-element {
  font-size:16px;
  font-weight:700
}

.appstory-point {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  align-items:center;
  text-align:left
}

.appstory-adv {
  padding-right:48px
}

.appstory-adv .module-caption {
  margin-bottom:28px
}

.appstory-stack {
  list-style:none;
  margin:0 0 32px;
  padding:0;
  display:grid;
  gap:22px
}

.appstory-row {
  display:flex;
  align-items:flex-start;
  gap:16px;
  font-size:19px;
  font-weight:600;
  line-height:1.3;
  color:#FFFFFF
}

.appstory-staricon {
  flex-shrink:0;
  margin-top:1px;
  fill:none;
  stroke:#D946EF;
  stroke-width:1.8
}

.appstory-cta {
  height:58px;
  padding:0 52px;
  font-size:16px;
  border-radius:999px;
  letter-spacing:1px;
  text-transform:uppercase
}

.appstory-apppart {
  text-align:left;
  padding-left:48px;
  border-left:1px solid var(--lntnhz,#D946EF40);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:center;
  gap:24px
}

.appstory-apppart-leftside {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0
}

.appstory-apppart .appstory-pic {
  min-width:0;
  margin:0
}

.appstory-apppart-head {
  font-size:clamp(28px,4vw,44px);
  margin:0 0 26px
}

.appstory-stamps {
  justify-content:flex-start;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
  margin:0 0 8px
}

.appstory-stamps .appshow-flag {
  min-width:0;
  width:100%;
  max-width:210px
}

.appstory-pic {
  margin-top:24px
}

.appstory-pic img {
  width:100%;
  height:auto;
  max-height:460px;
  object-fit:contain;
  display:block;
  filter:drop-shadow(0 8px 28px rgba(0,0,0,0.4))
}

.appstory-phonepic {
  position:relative;
  width:min(250px,72%);
  margin:0 auto;
  aspect-ratio:9 / 19.5;
  background:#0b0b0f;
  border-radius:42px;
  padding:9px;
  box-shadow:0 16px 44px rgba(0,0,0,0.45),inset 0 0 0 2px rgba(255,255,255,0.05)
}

.appstory-phonepic::before {
  content:"";
  position:absolute;
  top:13px;
  left:50%;
  transform:translateX(-50%);
  width:36%;
  height:20px;
  background:#0b0b0f;
  border-radius:0 0 13px 13px;
  z-index:2
}

.appstory-pic .appstory-phonepic img {
  width:100%;
  height:100%;
  max-height:none;
  object-fit:cover;
  border-radius:33px;
  filter:none;
  display:block
}

.appstory-padpic {
  position:relative;
  width:min(440px,100%);
  margin:0 auto;
  aspect-ratio:16 / 10;
  background:#0b0b0f;
  border-radius:20px;
  padding:12px 14px;
  box-shadow:0 16px 44px rgba(0,0,0,0.45),inset 0 0 0 2px rgba(255,255,255,0.05)
}

.appstory-padpic::before {
  content:"";
  position:absolute;
  top:50%;
  left:6px;
  transform:translateY(-50%);
  width:6px;
  height:6px;
  border-radius:50%;
  background:rgba(255,255,255,0.2);
  z-index:2
}

.appstory-pic .appstory-padpic img {
  width:100%;
  height:100%;
  max-height:none;
  object-fit:cover;
  border-radius:9px;
  filter:none;
  display:block
}

.appstory-browserframe {
  width:100%;
  max-width:560px;
  margin:0 auto;
  border-radius:12px;
  overflow:hidden;
  background:#15151b;
  box-shadow:0 16px 44px rgba(0,0,0,0.45),inset 0 0 0 1px rgba(255,255,255,0.06)
}

.appstory-browserframe-meter {
  display:block;
  height:26px;
  background:#1e1e26;
  position:relative
}

.appstory-browserframe-meter::before {
  content:"";
  position:absolute;
  top:50%;
  left:14px;
  transform:translateY(-50%);
  width:8px;
  height:8px;
  border-radius:50%;
  background:#ff5f57;
  box-shadow:15px 0 0 #febc2e,30px 0 0 #28c840
}

.appstory-pic .appstory-browserframe img {
  width:100%;
  height:auto;
  max-height:400px;
  object-fit:cover;
  border-radius:0;
  filter:none;
  display:block
}

.appstory-zebra {
  padding:48px;
  border-radius:var(--bq4cwu,16px)
}

@media (max-width:760px) {
  .appstory-point {
    grid-template-columns:1fr
  }
  .appstory-adv {
    padding-right:0
  }
  .appstory-apppart {
    text-align:center;
    padding-left:0;
    padding-top:32px;
    margin-top:4px;
    border-left:none;
    border-top:1px solid var(--lntnhz,#D946EF40);
    grid-template-columns:1fr;
    align-items:center;
    gap:22px
  }
  .appstory-apppart-leftside {
    align-items:center
  }
  .appstory-stamps {
    align-items:center
  }
  .appstory-row {
    font-size:17px
  }
  .appstory-zebra {
    padding:30px 20px
  }
}

@media (max-width:480px) {
  .appstory-cta {
    padding:0 32px;
    height:54px
  }
  .appstory-stack {
    gap:16px
  }
  .appstory-apppart-head {
    margin-bottom:18px
  }
  .appstory-phonepic {
    width:min(220px,80%)
  }
}

.backdrop-unitpart {
  text-align:center;
  max-width:720px;
  margin:0 auto 28px;
  opacity:0.8;
  line-height:1.6
}

.backdrop-point {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,258px),1fr));
  gap:20px
}

.backdrop-node {
  background:rgba(255,255,255,0.03);
  border:1px solid #D946EF22;
  border-radius:16px;
  padding:26px 24px;
  display:flex;
  flex-direction:column;
  gap:12px;
  transition:border-color 0.2s,transform 0.2s
}

.backdrop-node:hover {
  border-color:#D946EF55;
  transform:translateY(-3px)
}

.backdrop-pic {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:54px;
  height:54px;
  border-radius:14px;
  background:#D946EF1a
}

.backdrop-caption {
  font-size:20px;
  font-weight:800;
  margin:4px 0 0
}

.backdrop-accentpart {
  align-self:flex-start;
  font-weight:800;
  color:#D946EF;
  background:#D946EF14;
  border:1px solid #D946EF33;
  border-radius:999px;
  padding:4px 13px;
  font-size:14px
}

.backdrop-text {
  margin:0;
  opacity:0.78;
  line-height:1.55;
  font-size:15px
}

.backdrop-facts {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:auto;
  padding-top:4px
}

.backdrop-bit {
  font-size:12px;
  font-weight:600;
  padding:3px 9px;
  border-radius:6px;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  opacity:0.85
}

.backdrop-codeunit {
  color:#D946EF;
  border-color:#D946EF40;
  opacity:1
}

.backdrop-cta {
  align-self:flex-start;
  margin-top:2px;
  font-weight:700;
  color:#D946EF;
  text-decoration:none;
  font-size:14px
}

.backdrop-cta::after {
  content:" \2192"
}

@media (max-width:560px) {
  .backdrop-point {
    gap:14px
  }
  .backdrop-node {
    padding:20px 18px;
    gap:10px;
    border-radius:14px
  }
  .backdrop-pic {
    width:46px;
    height:46px;
    border-radius:12px
  }
  .backdrop-caption {
    font-size:18px
  }
  .backdrop-accentpart {
    font-size:13px;
    padding:4px 11px
  }
  .backdrop-text {
    font-size:14px
  }
}

.notice-bar-entity {
  display:grid;
  border-radius:14px;
  overflow:hidden
}

.notice-bar-item {
  grid-area:1 / 1;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block
}

.notice-bar-overpart {
  grid-area:1 / 1;
  z-index:1;
  align-self:center;
  margin:clamp(12px,3%,40px);
  width:min(56%,520px);
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:clamp(18px,3.5%,34px);
  background:rgba(12,16,22,0.6);
  -webkit-backdrop-filter:blur(3px);
  backdrop-filter:blur(3px);
  border-radius:16px
}

.notice-bar-leftside .notice-bar-overpart {
  justify-self:start;
  align-items:flex-start;
  text-align:left
}

.notice-bar-rightunit .notice-bar-overpart {
  justify-self:end;
  align-items:flex-end;
  text-align:right
}

.notice-bar-centred .notice-bar-overpart {
  justify-self:center;
  align-items:center;
  text-align:center
}

.notice-bar-caption {
  font-size:clamp(22px,3.4vw,40px);
  font-weight:800;
  line-height:1.12;
  margin:0;
  color:#fff
}

.notice-bar-sub {
  margin:0;
  color:rgba(255,255,255,0.88);
  font-size:clamp(14px,1.5vw,17px);
  line-height:1.45
}

.notice-bar-cta.chunk-partbit {
  font-size:clamp(14px,1.5vw,17px);
  padding:12px 30px;
  align-self:flex-start
}

.notice-bar-centred .notice-bar-cta {
  align-self:center
}

.notice-bar-rightunit .notice-bar-cta {
  align-self:flex-end
}

@media (max-width:640px) {
  .notice-bar-overpart {
    width:auto;
    justify-self:stretch;
    align-self:end;
    margin:10px;
    align-items:center;
    text-align:center
  }
  .notice-bar-overpart .notice-bar-cta {
    align-self:center
  }
}

.tiers-point {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));
  gap:22px
}

.tiers-node {
  position:relative;
  display:flex;
  flex-direction:column;
  background:linear-gradient(180deg,rgba(255,255,255,0.045),rgba(255,255,255,0.012));
  border:1px solid #D946EF22;
  border-radius:18px;
  padding:24px;
  text-align:center;
  transition:border-color 0.2s,transform 0.2s,box-shadow 0.2s
}

.tiers-node:hover {
  border-color:#D946EF55;
  transform:translateY(-3px);
  box-shadow:0 14px 34px -18px #D946EF66
}

.bit--featured {
  border-color:#D946EF;
  box-shadow:0 0 0 1px #D946EF66,0 20px 46px -18px #D946EF55
}

.bit--featured::before {
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  border-radius:18px 18px 0 0;
  background:#D946EF
}

.tiers-pic {
  height:240px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  margin-bottom:4px;
  background:radial-gradient(ellipse 62% 48% at 50% 92%,#D946EF1f,transparent 70%)
}

.tiers-pic img {
  max-height:100%;
  max-width:90%;
  object-fit:contain
}

.tiers-inner {
  flex:1;
  display:flex;
  flex-direction:column
}

.tiers-caption {
  font-size:clamp(22px,2.3vw,28px);
  font-weight:800;
  line-height:1.15;
  margin:0 0 14px;
  min-height:2.3em;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center
}

.tiers-total {
  color:#D946EF;
  font-size:1.22em;
  font-weight:900
}

.tiers-splitter {
  height:3px;
  width:100%;
  border-radius:2px;
  margin:0 0 16px
}

.tiers-text {
  margin:0 0 22px;
  opacity:0.8;
  line-height:1.6;
  font-size:15px
}

.tiers-cta.chunk-partbit {
  margin-top:auto;
  align-self:center;
  min-width:78%;
  padding:13px 28px;
  border-radius:999px
}

@media (max-width:560px) {
  .tiers-point {
    gap:16px
  }
  .tiers-node {
    padding:18px;
    border-radius:16px
  }
  .tiers-pic {
    height:176px
  }
  .tiers-caption {
    font-size:21px;
    min-height:0;
    margin-bottom:10px
  }
  .tiers-text {
    margin-bottom:18px;
    font-size:14px
  }
  .tiers-cta.chunk-partbit {
    min-width:100%;
    padding:12px 24px
  }
}

.registerform {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
  align-items:center
}

.registerform.register-emptyimg {
  grid-template-columns:1fr;
  max-width:640px;
  margin:0 auto
}

.register-imgright .register-pic {
  order:2
}

.register-pic img {
  width:100%;
  height:auto;
  object-fit:contain;
  display:block
}

.register-node {
  border:1px solid #D946EF;
  border-radius:20px;
  background:var(--g95mw6,rgba(255,255,255,0.02));
  padding:32px 28px
}

.register-head {
  text-align:center;
  font-size:22px;
  font-weight:800;
  color:#FFFFFF;
  margin-bottom:22px;
  line-height:1.3
}

.register-controls {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-bottom:18px
}

.register-textbox {
  width:100%;
  padding:15px 18px;
  border-radius:12px;
  background:var(--calzrr,rgba(0,0,0,0.25));
  border:1px solid #D946EF66;
  color:#FFFFFF;
  font-size:14px;
  outline:none;
  box-sizing:border-box
}

.register-textbox::placeholder {
  color:#9CA3AF
}

.register-textbox:focus {
  border-color:#D946EF
}

.register-cta {
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:auto;
  min-height:52px;
  padding:12px 16px;
  border-radius:12px;
  font-weight:800;
  font-size:16px;
  line-height:1.2;
  letter-spacing:0.3px;
  white-space:normal
}

.register-node {
  position:relative;
  cursor:pointer
}

.register-veil {
  position:absolute;
  inset:0;
  z-index:3;
  border-radius:20px
}

.register-node:hover {
  box-shadow:0 0 0 1px #D946EF,0 14px 38px rgba(0,0,0,0.45)
}

.register-node:hover .register-cta {
  filter:brightness(1.08)
}

.register-textbox {
  pointer-events:none
}

@media (max-width:980px) {
  .registerform {
    grid-template-columns:1fr;
    max-width:680px;
    margin:0 auto;
    gap:28px
  }
  .register-imgright .register-pic {
    order:0
  }
  .register-pic {
    text-align:center
  }
  .register-pic img {
    max-height:300px;
    width:auto;
    margin:0 auto
  }
}

@media (max-width:560px) {
  .register-controls {
    grid-template-columns:1fr;
    gap:12px
  }
  .register-node {
    padding:24px 18px
  }
  .register-head {
    font-size:20px;
    margin-bottom:18px
  }
  .register-pic img {
    max-height:230px
  }
}

.refreshline {
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 22px;
  border-radius:12px;
  background:var(--g95mw6,rgba(255,255,255,0.03));
  border:1px solid #D946EF55;
  color:#FFFFFF;
  font-size:14px
}

.refreshline-pic {
  display:inline-flex;
  width:24px;
  height:24px;
  border-radius:50%;
  background:#D946EF;
  align-items:center;
  justify-content:center;
  flex:none
}

.plain-main {
  max-width:100%;
  overflow-wrap:break-word;
  word-wrap:break-word
}

.plain-main h2 {
  font-size:33px;
  margin:38px 0 16px;
  font-weight:500;
  line-height:1.18;
  padding-top:22px;
  border-top:1px solid var(--y4emxt,rgba(255,255,255,0.06));
  scroll-margin-top:90px
}

.plain-main h2:first-child {
  border-top:none;
  padding-top:0;
  margin-top:0
}

.plain-main h3 {
  font-size:25px;
  margin:28px 0 11px;
  font-weight:600;
  line-height:1.2;
  scroll-margin-top:90px
}

.plain-main.plain-main h1 {
  font-weight:800
}

.plain-main.plain-main h2 {
  font-weight:700
}

.plain-main.plain-main h3 {
  font-weight:700
}

.module-caption.module-caption {
  font-weight:800
}

.plain-main p {
  margin:0 0 18px;
  line-height:1.7;
  font-size:16px;
  color:#C9CDD5
}

.plain-main td > p,
.plain-main th > p {
  margin:0
}

.plain-main td > p + p,
.plain-main th > p + p {
  margin-top:8px
}

.plain-main ul,
.plain-main ol {
  margin:0 0 18px;
  padding-left:24px
}

.plain-main li {
  margin-bottom:8px;
  color:#C9CDD5;
  font-size:16px;
  line-height:1.7
}

.plain-main a {
  color:#D946EF;
  border-bottom:1px solid #D946EF40;
  transition:border-color 0.15s
}

.plain-main a:hover {
  border-color:#D946EF
}

.plain-main table {
  width:100%;
  border-collapse:collapse;
  border-spacing:0;
  margin:20px 0;
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.08)
}

.datatable-entity {
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  margin:20px 0;
  position:relative;
  border-radius:12px
}

.datatable-entity table {
  margin:0;
  min-width:480px
}

.datatable-entity::-webkit-scrollbar {
  height:6px
}

.datatable-entity::-webkit-scrollbar-track {
  background:rgba(255,255,255,0.04);
  border-radius:3px
}

.datatable-entity::-webkit-scrollbar-thumb {
  background:#D946EF50;
  border-radius:3px
}

.datatable-entity::-webkit-scrollbar-thumb:hover {
  background:#D946EF80
}

.plain-main thead th {
  background:rgba(255,255,255,0.04);
  padding:14px 18px;
  text-align:left;
  font-size:13px;
  font-weight:600;
  color:#FFFFFF;
  border-bottom:1px solid rgba(255,255,255,0.1);
  white-space:nowrap
}

.plain-main th {
  background:rgba(255,255,255,0.04);
  padding:14px 18px;
  text-align:left;
  font-size:13px;
  font-weight:600;
  color:#FFFFFF;
  border-bottom:1px solid rgba(255,255,255,0.1)
}

.plain-main td {
  padding:12px 18px;
  border-bottom:1px solid rgba(255,255,255,0.04);
  color:#D1D5DB;
  font-size:14px;
  line-height:1.5
}

.plain-main td:first-child {
  font-weight:600;
  color:#FFFFFF
}

.plain-main tr:last-child td {
  border-bottom:none
}

.plain-main tr:hover td {
  background:rgba(255,255,255,0.02)
}

.plain-main blockquote {
  border-left:4px solid #D946EF;
  background:#D946EF08;
  padding:16px 20px;
  margin:20px 0;
  border-radius:0 10px 10px 0
}

.plain-main code {
  font-family:inherit;
  background:none;
  padding:0;
  font-size:inherit
}

.plain-main pre {
  background:rgba(0,0,0,0.4);
  padding:16px;
  border-radius:10px;
  overflow-x:auto;
  margin:16px 0;
  border:1px solid rgba(255,255,255,0.08)
}

.plain-main pre code {
  font-family:'SF Mono','JetBrains Mono',monospace;
  font-size:14px
}

.plain-main img {
  max-width:100%;
  border-radius:14px;
  margin:20px 0;
  aspect-ratio:auto;
  height:auto
}

.plain-main > img,
.plain-main > p > img {
  max-width:60% !important;
  display:block;
  margin:20px auto
}

.qna-factor {
  background:var(--g95mw6,rgba(255,255,255,0.02));
  border-radius:var(--bq4cwu,16px);
  padding:28px;
  border:1px solid var(--lntnhz,rgba(255,255,255,0.05));
  box-shadow:var(--qf11yg,none)
}

.qna-point {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px
}

.qna-row {
  padding:16px 20px;
  border-bottom:none;
  border-radius:var(--bq4cwu,12px);
  background:var(--g95mw6,rgba(255,255,255,0.04));
  transition:background 0.15s,border-color 0.15s;
  border:1px solid var(--lntnhz,rgba(255,255,255,0.06))
}

.qna-row:hover {
  background:rgba(255,255,255,0.06);
  border-color:rgba(255,255,255,0.1)
}

.qna-row.detail {
  background:rgba(255,255,255,0.06);
  border-color:#D946EF30
}

.qna-unit-head {
  margin:0;
  font:inherit
}

.qna-askpart {
  width:100%;
  background:none;
  border:none;
  padding:0;
  margin:0;
  font-family:inherit;
  text-align:left;
  cursor:pointer;
  font-weight:600;
  font-size:15px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  min-height:40px;
  color:#fff
}

.qna-askpart span:last-child {
  color:#D946EF;
  font-size:22px;
  font-weight:700;
  transition:transform 0.25s;
  flex-shrink:0;
  width:28px;
  height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:6px;
  background:#D946EF15
}

.qna-row.detail .qna-askpart span:last-child {
  transform:rotate(45deg);
  background:#D946EF25
}

.qna-ansbit {
  color:#9CA3AF;
  font-size:14px;
  line-height:1.6;
  overflow:hidden;
  max-height:0;
  transition:max-height 0.3s ease,padding 0.3s ease;
  padding-top:0
}

.qna-row.detail .qna-ansbit {
  max-height:500px;
  padding-top:12px
}

.score-unit {
  background:var(--g95mw6,rgba(255,255,255,0.03));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.07));
  border-radius:var(--bq4cwu,16px);
  box-shadow:var(--qf11yg,none);
  padding:28px 32px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:40px
}

.score-grade {
  text-align:center;
  background:var(--calzrr,rgba(255,255,255,0.04));
  border-radius:var(--bq4cwu,16px);
  padding:24px 32px;
  border:1px solid var(--lntnhz,rgba(255,255,255,0.06))
}

.score-area {
  font-size:64px;
  font-weight:900;
  line-height:1;
  font-family:'SF Mono','JetBrains Mono',monospace
}

.module {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px
}

.module > div {
  background:var(--g95mw6,rgba(255,255,255,0.03));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.06));
  border-radius:var(--bq4cwu,14px);
  box-shadow:var(--qf11yg,none);
  padding:20px 24px
}

.hitlist {
  display:grid;
  gap:10px
}

.rankline-band {
  display:grid;
  grid-template-columns:32px auto 1fr auto auto;
  gap:16px;
  align-items:center;
  padding:16px 22px;
  border-radius:var(--bq4cwu,14px);
  border:1px solid var(--lntnhz,rgba(255,255,255,0.07));
  background:var(--g95mw6,rgba(255,255,255,0.03));
  box-shadow:var(--qf11yg,none);
  transition:border-color 0.15s,background 0.15s
}

.rankline-band:hover {
  border-color:#D946EF30;
  background:rgba(255,255,255,0.05)
}

.banking-point {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px
}

.banking-node {
  background:var(--g95mw6,rgba(255,255,255,0.04));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.07));
  border-radius:var(--bq4cwu,12px);
  box-shadow:var(--qf11yg,none);
  padding:16px 14px
}

.banking-node-top {
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:12px
}

.banking-metrics {
  display:grid;
  gap:6px;
  border-top:1px solid var(--y4emxt,rgba(255,255,255,0.06));
  padding-top:10px
}

.pointpart-node {
  border:1px solid var(--lntnhz,rgba(255,255,255,0.08));
  border-radius:var(--bq4cwu,16px);
  box-shadow:var(--qf11yg,none);
  overflow:hidden;
  background:#1a1e2e
}

.pointpart-node-member {
  height:4px;
  background:var(--g7uvfs,#D946EF)
}

.pointpart-node-inner {
  padding:28px 36px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:24px
}

.bonuscta-centred {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  width:100%
}

.bonuscta-flag {
  display:inline-block;
  font-size:10px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
  color:var(--iuv5hl,#D946EF);
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:4px;
  padding:4px 10px;
  margin-bottom:10px
}

.bonuscta-caption {
  font-size:38px;
  font-weight:900;
  color:#fff;
  line-height:1.05;
  margin-bottom:4px
}

.bonuscta-subheading {
  font-size:20px;
  font-weight:700;
  color:var(--iuv5hl,#D946EF);
  margin-bottom:16px
}

.bonuscta-highpart {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:center
}

.bonuscta-highlight {
  font-size:12px;
  color:#D1D5DB;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:6px;
  padding:4px 10px
}

.bonuscta-highlight::before {
  content:"✓ ";
  color:#34D399
}

.bonuscta-play {
  background:#D946EF;
  color:var(--q859dp,#13151b);
  border:none;
  border-radius:10px;
  padding:16px 40px;
  font-size:15px;
  font-weight:800;
  text-decoration:none;
  display:inline-block;
  transition:all 0.2s
}

.bonuscta-play:hover {
  transform:translateY(-1px);
  opacity:0.95
}

.bonuscta-terms {
  font-size:10px;
  color:#6B7280;
  text-align:center;
  max-width:200px;
  margin-top:8px
}

.bonuscta-cta-entity {
  display:flex;
  flex-direction:column;
  align-items:center;
  flex-shrink:0
}

.bonuscta-tagset {
  display:flex;
  flex-wrap:wrap;
  gap:20px;
  justify-content:center;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid var(--y4emxt,rgba(255,255,255,0.06));
  width:100%
}

.bonuscta-tagbit {
  font-size:13px;
  color:#9ca3af;
  padding-left:20px;
  position:relative
}

.bonuscta-tagbit::before {
  content:"✓";
  color:#D946EF;
  position:absolute;
  left:0;
  top:0;
  font-weight:700
}

.picture-tagline {
  display:flex;
  gap:28px;
  margin:28px 0;
  align-items:flex-start;
  padding:24px;
  background:rgba(255,255,255,0.02);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:16px
}

.picture-tagline[data-link="right"] {
  flex-direction:row-reverse
}

.picture-tagline img {
  width:38%;
  border-radius:12px;
  flex-shrink:0;
  object-fit:cover;
  box-shadow:0 4px 20px rgba(0,0,0,0.3);
  border:1px solid rgba(255,255,255,0.08)
}

.picture-tagline img[src=""],
.picture-tagline img:not([src]) {
  display:none
}

.picture-tagline:not(:has(img)),
.picture-tagline:has(img[src=""]),
.picture-tagline:has(img:not([src])) {
  display:contents;
  border:none;
  padding:0;
  margin:0;
  background:none
}

.picture-tagline > div {
  flex:1;
  min-width:0
}

.picture-chunk {
  cursor:pointer
}

.picture-centred {
  margin:28px auto;
  text-align:center;
  max-width:60%
}

.picture-centred img {
  width:100%;
  border-radius:12px;
  object-fit:cover;
  box-shadow:0 4px 20px rgba(0,0,0,0.3);
  border:1px solid rgba(255,255,255,0.08)
}

.picture-centred img[src=""],
.picture-centred img:not([src]) {
  display:none
}

.picture-centred:has(img[src=""]) .picture-entity,
.picture-centred:has(img:not([src])) .picture-entity {
  display:none
}

.picture-entity {
  font-size:12px;
  color:#6B7280;
  margin-top:8px;
  font-style:italic
}

.tipbox {
  border-radius:12px;
  padding:18px 22px;
  margin:16px 0;
  line-height:1.6
}

.tipbox p {
  margin:0
}

.tipbox-data {
  background:rgba(59,130,246,0.08);
  border:1px solid rgba(59,130,246,0.2);
  color:#93C5FD
}

.tipbox-warnbit {
  background:rgba(245,158,11,0.08);
  border:1px solid rgba(245,158,11,0.2);
  color:#FCD34D
}

.cta-play {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:14px 40px;
  border-radius:8px;
  font-weight:700;
  font-size:15px;
  text-decoration:none !important;
  border-bottom:none !important;
  transition:all 0.2s;
  cursor:pointer;
  line-height:1.4
}

.cta-partbit {
  background:#D946EF;
  color:#0b0d12 !important
}

.cta-yellowpart {
  background:#ffce2f;
  color:#13151b !important
}

.cta-greenbtn {
  background:#22c55e;
  color:#fff !important
}

.cta-play:hover {
  opacity:0.9;
  transform:translateY(-1px)
}

.plain-main a.cta-play,
.plain-main .cta-play {
  color:inherit !important;
  text-decoration:none !important;
  border-bottom:none !important;
  display:inline-flex;
  margin:12px 0
}

.plain-main a.cta-partbit {
  color:#0b0d12 !important
}

.plain-main a.cta-yellowpart {
  color:#13151b !important
}

.plain-main a.cta-greenbtn {
  color:#fff !important
}

.aspect {
}

.gamesection-chippart {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:center;
  margin-bottom:28px;
  overflow-x:auto;
  scrollbar-width:none;
  padding:4px
}

.gamesection-chippart::-webkit-scrollbar {
  display:none
}

.gamesection-bit {
  display:inline-flex;
  align-items:center;
  padding:9px 18px;
  border-radius:50px;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  color:rgba(255,255,255,0.7);
  font-size:13px;
  font-weight:600;
  text-decoration:none;
  white-space:nowrap;
  transition:all 0.15s
}

.gamesection-bit:hover {
  background:rgba(255,255,255,0.08);
  color:#fff
}

.gamesection-bit-on {
  background:#D946EF;
  color:#13151b;
  border-color:#D946EF
}

.gamesection-bit-on:hover {
  background:#D946EF;
  color:#13151b;
  opacity:0.92
}

.gamesection-point {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
  margin-bottom:24px
}

.gamesection-node {
  text-decoration:none
}

.gamesection-node:hover {
  transform:scale(1.05);
  box-shadow:var(--t5u0x0,0 16px 40px rgba(0,0,0,0.5)),0 0 0 2px #D946EF40;
  z-index:2
}

.gamesection-node img {
  transition:transform 0.3s
}

.gamesection-node:hover img {
  transform:scale(1.08)
}

.gamesection-component {
  display:flex;
  justify-content:center;
  margin-top:8px
}

.gamesection-alllink {
  color:#D946EF;
  font-size:14px;
  font-weight:700;
  text-decoration:none;
  padding:10px 24px;
  border-radius:50px;
  border:1px solid rgba(217,70,239,0.3);
  transition:all 0.15s
}

.gamesection-alllink:hover {
  background:rgba(217,70,239,0.08)
}

.dealgrid {
}

.highlight-node {
  display:flex;
  flex-direction:column;
  background:#1a1e2e;
  border:1px solid var(--lntnhz,rgba(255,255,255,0.06));
  border-radius:var(--bq4cwu,16px);
  box-shadow:var(--qf11yg,none);
  overflow:hidden;
  text-decoration:none;
  color:inherit;
  transition:transform 0.2s,border-color 0.2s,box-shadow 0.2s
}

.highlight-node:hover {
  transform:translateY(-4px);
  border-color:var(--oqb92d,rgba(255,255,255,0.15));
  box-shadow:var(--t5u0x0,0 12px 32px rgba(0,0,0,0.3))
}

.highlight-node-item {
  height:160px;
  background-size:cover;
  background-position:center;
  background-color:rgba(255,255,255,0.03)
}

.highlight-node-item-reserve {
  background:linear-gradient(135deg,rgba(217,70,239,0.3) 0%,rgba(217,70,239,0.1) 100%)
}

.highlight-node-inner {
  padding:22px 22px 24px;
  display:flex;
  flex-direction:column;
  gap:8px;
  flex:1
}

.highlight-node-flag {
  display:inline-block;
  font-size:10px;
  font-weight:800;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:var(--iuv5hl,#D946EF);
  background:rgba(217,70,239,0.12);
  border-radius:4px;
  padding:4px 10px;
  width:fit-content;
  margin-bottom:2px
}

.highlight-node-caption {
  font-size:18px;
  font-weight:800;
  color:#fff;
  line-height:1.25;
  letter-spacing:-0.2px
}

.highlight-node-subheading {
  font-size:14px;
  color:#b0b4c0;
  line-height:1.6;
  margin-bottom:4px;
  flex:1
}

.highlight-node-play {
  font-size:13px;
  font-weight:700;
  color:var(--iuv5hl,#D946EF);
  margin-top:auto;
  padding-top:12px;
  border-top:1px solid var(--y4emxt,rgba(255,255,255,0.06));
  transition:gap 0.15s
}

.highlight-node:hover .highlight-node-play {
  color:#fff
}

@media (max-width:1024px) {
  .gamesection-point {
    grid-template-columns:repeat(4,1fr);
    gap:10px
  }
  .dealgrid-point {
    grid-template-columns:repeat(2,1fr) !important
  }
}

@media (max-width:640px) {
  .gamesection-point {
    grid-template-columns:repeat(3,1fr);
    gap:8px
  }
  .gamesection-bit {
    padding:7px 14px;
    font-size:12px
  }
  .dealgrid-point {
    grid-template-columns:1fr !important
  }
  .highlight-node-item {
    height:140px
  }
}

@media (max-width:768px) {
  .hitlist .rankline-band {
    grid-template-columns:26px 1fr auto !important;
    row-gap:8px
  }
  .hitlist .rankline-band .rankline-brand {
    display:none
  }
  .hitlist .rankline-band .chunk-partbit {
    grid-column:1 / -1;
    justify-content:center
  }
}

.winboard {
  background:var(--g95mw6,rgba(255,255,255,0.03));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.07));
  border-radius:var(--bq4cwu,16px);
  box-shadow:var(--qf11yg,none);
  padding:28px
}

.winfeed-podiumbox {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin-bottom:24px
}

.winfeed-podiumbox-node {
  background:var(--calzrr,rgba(255,255,255,0.04));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.08));
  border-radius:var(--bq4cwu,12px);
  padding:18px 16px;
  text-align:center
}

.winfeed-podiumbox-term {
  font-size:11px;
  font-weight:800;
  letter-spacing:1.5px;
  text-transform:uppercase;
  margin-bottom:6px
}

.winfeed-podiumbox-total {
  font-size:24px;
  font-weight:900;
  font-family:'SF Mono','JetBrains Mono',monospace;
  margin-bottom:4px
}

.winfeed-podiumbox-playername {
  font-size:12px;
  color:#6B7280
}

.winboard-point {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px
}

.winfeed-side-caption {
  font-size:14px;
  font-weight:700;
  color:#fff;
  margin-bottom:12px
}

.winfeed-stack {
  display:grid;
  gap:8px
}

.winfeed-band {
  display:flex;
  align-items:center;
  gap:12px;
  background:var(--g95mw6,rgba(255,255,255,0.04));
  border-radius:var(--bq4cwu,10px);
  padding:12px 16px
}

.winfeed-prize {
  width:32px;
  height:32px;
  border-radius:50%;
  font-size:14px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0
}

.winfeed-playername {
  flex:1;
  min-width:0
}

.winfeed-total {
  font-size:16px;
  font-weight:800;
  white-space:nowrap
}

.manual-unit {
}

.manual-text {
  color:#FFFFFF;
  opacity:0.8;
  font-size:15px;
  line-height:1.6;
  margin-bottom:24px
}

.manual-steplist {
  display:flex;
  flex-direction:column;
  gap:0;
  position:relative
}

.manual-steplist::before {
  content:'';
  position:absolute;
  left:23px;
  top:24px;
  bottom:24px;
  width:2px;
  background:#D946EF22
}

.manual-stepunit {
  display:flex;
  gap:16px;
  align-items:flex-start;
  padding:16px 0;
  position:relative
}

.manual-stepunit-digit {
  width:48px;
  height:48px;
  border-radius:var(--bq4cwu,12px);
  background:var(--l9494e,#D946EF18);
  color:#D946EF;
  font-size:18px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  position:relative;
  z-index:1
}

.manual-stepunit-inner {
  flex:1;
  min-width:0
}

.manual-stepunit-caption {
  font-size:17px;
  font-weight:600;
  color:#FFFFFF;
  margin:0 0 6px;
  line-height:1.3
}

.manual-stepunit-tagline {
  font-size:15px;
  color:#FFFFFF;
  opacity:0.8;
  line-height:1.6
}

.manual-stepunit-tagline p {
  margin:0 0 8px
}

@media (max-width:768px) {
  .manual-stepunit-digit {
    width:40px;
    height:40px;
    font-size:15px;
    border-radius:10px
  }
  .manual-stepunit-caption {
    font-size:15px
  }
  .manual-stepunit-tagline {
    font-size:14px
  }
  .manual-steplist::before {
    left:19px
  }
}

.wayline {
}

.widepromo-rail {
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px
}

.widepromo-entity {
  display:inline-flex;
  align-items:center;
  color:#FFFFFF;
  opacity:0.4;
  flex-shrink:0
}

.widepromo-factor {
  width:20px;
  height:20px;
  display:block
}

.wayline--place .widepromo-lozenge {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 18px;
  border-radius:999px;
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  font-weight:700;
  font-size:15px;
  line-height:1.2;
  white-space:nowrap;
  border:2px solid rgba(0,0,0,0.28)
}

.wayline--place .widepromo-pic {
  display:inline-flex
}

.wayline--place .widepromo-pic svg {
  width:17px;
  height:17px;
  display:block
}

.wayline--place .widepromo-lozenge.widepromo-curpart {
  outline:3px solid #D946EF;
  outline-offset:2px
}

.wayline--unitpart .widepromo-rail {
  align-items:stretch
}

.widepromo-node {
  position:relative;
  flex:1 1 160px;
  max-width:220px;
  min-width:150px;
  background:var(--g95mw6,rgba(255,255,255,0.04));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.09));
  border-radius:var(--bq4cwu,14px);
  padding:20px 16px
}

.widepromo-node.widepromo-curpart {
  border-color:#D946EF59
}

.widepromo-digit {
  position:absolute;
  top:14px;
  right:14px;
  font-size:12px;
  font-weight:700;
  color:#FFFFFF;
  opacity:0.35
}

.widepromo-detailbox-2 {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:12px;
  background:var(--l9494e,#D946EF18);
  color:#D946EF;
  margin-bottom:14px
}

.widepromo-detailbox-2 svg {
  width:23px;
  height:23px;
  display:block
}

.widepromo-node .widepromo-entity-2 {
  font-size:15px;
  font-weight:700;
  color:#FFFFFF;
  margin-bottom:5px;
  line-height:1.25
}

.widepromo-part {
  font-size:12.5px;
  color:#FFFFFF;
  opacity:0.7;
  line-height:1.55
}

.widepromo-point {
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  justify-content:center;
  gap:10px
}

.widepromo-pointpart {
  position:relative;
  flex:1 1 150px;
  max-width:190px;
  min-width:130px;
  text-align:center;
  background:var(--g95mw6,rgba(255,255,255,0.04));
  border:1px solid var(--lntnhz,rgba(255,255,255,0.09));
  border-radius:var(--bq4cwu,14px);
  padding:20px 16px
}

.widepromo-pointpart.widepromo-curpart {
  border:2px solid #D946EF;
  background:#D946EF14
}

.widepromo-detailbox {
  position:absolute;
  top:-11px;
  left:50%;
  transform:translateX(-50%);
  background:var(--g7uvfs,#D946EF);
  color:var(--q859dp,#fff);
  font-size:11px;
  font-weight:700;
  padding:2px 12px;
  border-radius:999px;
  white-space:nowrap
}

.widepromo-partbit {
  display:inline-flex;
  color:#D946EF;
  margin-bottom:8px
}

.widepromo-partbit svg {
  width:30px;
  height:30px;
  display:block
}

.widepromo-pointpart .widepromo-entity-2 {
  font-size:15px;
  font-weight:700;
  color:#FFFFFF;
  margin-bottom:2px
}

.widepromo-sub {
  font-size:12px;
  color:#FFFFFF;
  opacity:0.55
}

.widepromo-detail {
  font-size:12.5px;
  color:#FFFFFF;
  opacity:0.8;
  line-height:1.5;
  border-top:1px solid var(--lntnhz,rgba(255,255,255,0.08));
  margin-top:10px;
  padding-top:10px
}

.widepromo-cta-entity {
  text-align:center;
  margin-top:22px
}

@media (max-width:768px) {
  .wayline--place .widepromo-rail,
  .wayline--unitpart .widepromo-rail {
    flex-direction:column
  }
  .wayline--place .widepromo-entity .widepromo-factor,
  .wayline--unitpart .widepromo-entity .widepromo-factor {
    transform:rotate(90deg)
  }
  .widepromo-node {
    max-width:100%;
    width:100%
  }
  .widepromo-pointpart {
    flex-basis:calc(50% - 5px);
    max-width:none
  }
}

a[data-plain] {
  cursor:pointer;
  text-decoration:none
}

a[data-plain].highlight-node {
  color:inherit
}

@media (max-width:768px) {
  .machine-veil {
    display:none
  }
  .machine-footpart {
    padding:7px 8px
  }
  .machine-footpart-label {
    font-size:11px;
    -webkit-line-clamp:1
  }
  .machine-footpart-studio {
    font-size:9px
  }
  .tablink {
    padding:8px 16px;
    font-size:12.5px
  }
  .vendorslider-rail {
    display:grid;
    grid-auto-flow:column;
    grid-template-rows:1fr 1fr;
    grid-auto-columns:calc((100% - 12px) / 2);
    gap:12px
  }
  .vendorslider-rail > .aspect-node {
    flex:none;
    width:auto
  }
  .vendorslider-arr {
    display:flex
  }
  .appshow-stat {
    flex:1 1 calc(50% - 6px);
    min-width:0
  }
  .appshow-flag {
    flex:1 1 auto;
    justify-content:center
  }
}

footer {
  background:#1b0b1e;
  padding:40px 24px 24px
}

.colophon-col-row {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:40px;
  max-width:1200px;
  margin:0 auto 28px;
  padding-bottom:32px;
  border-bottom:1px solid rgba(255,255,255,0.07)
}

.colophon-side-caption {
  color:#fff;
  font-weight:700;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:1.5px;
  margin-bottom:14px
}

.colophon-col-row > div a {
  display:block;
  color:#9CA3AF;
  font-size:15px;
  text-decoration:none;
  margin-bottom:4px;
  padding:4px 0;
  min-height:32px;
  line-height:24px;
  transition:color 0.15s
}

.colophon-col-row > div a:hover {
  color:#fff
}

.colophon-bottom {
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:12px
}

.tagbadge-18 {
  width:36px;
  height:36px;
  border-radius:50%;
  border:2px solid #9CA3AF;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#9CA3AF;
  font-weight:700;
  font-size:13px
}

.colophon-copyright {
  color:#9CA3AF;
  font-size:12px;
  max-width:600px;
  line-height:1.5
}

.index-link:hover {
  background:rgba(255,255,255,0.04)
}

.machine-bannerpart {
  display:grid;
  grid-template-columns:280px 1fr;
  gap:32px;
  align-items:start
}

.machine-miniimg-2 {
  width:100%;
  aspect-ratio:1;
  border-radius:16px;
  overflow:hidden;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.08)
}

.machine-miniimg-2 img {
  width:100%;
  height:100%;
  object-fit:cover
}

.machine-data-point {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px;
  margin-bottom:20px
}

.machine-grade {
  margin:0 0 14px
}

.machine-grade-term {
  font-size:12px;
  color:#9CA3AF;
  margin-bottom:5px
}

.machine-grade-meter {
  display:flex;
  gap:2px;
  padding:2px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(0,0,0,.30);
  overflow:hidden;
  max-width:260px
}

.machine-grade-cell {
  flex:1 1 0;
  height:9px;
  overflow:hidden
}

.machine-grade-cell:first-child {
  border-radius:999px 0 0 999px
}

.machine-grade-cell:last-child {
  border-radius:0 999px 999px 0
}

.machine-grade-cell i {
  display:block;
  height:100%
}

.machine-grade-cell:nth-child(1) i {
  background:#2e6b1f
}

.machine-grade-cell:nth-child(2) i {
  background:#42901f
}

.machine-grade-cell:nth-child(3) i {
  background:#54ac22
}

.machine-grade-cell:nth-child(4) i {
  background:#63c926
}

.machine-grade-cell:nth-child(5) i {
  background:#78e62c
}

.machine-grade-digit {
  font-size:12px;
  color:#9CA3AF;
  margin-top:4px
}

.machine-data-trigger {
  background:rgba(255,255,255,0.03);
  border-radius:8px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,0.06)
}

.machine-data-term {
  font-size:10px;
  color:#6B7280;
  text-transform:uppercase;
  letter-spacing:0.5px;
  margin-bottom:3px
}

.machine-data-amount {
  font-size:14px;
  font-weight:700;
  color:#D946EF
}

.keyfacts-brand {
  text-align:center;
  margin-bottom:30px
}

.keyfacts-top {
  display:grid;
  grid-template-columns:1fr auto;
  gap:32px;
  align-items:start;
  max-width:1200px;
  margin:0 auto
}

.keyfacts-col-row {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,max-content));
  gap:56px
}

.keyfacts-col-row .colophon-side-caption {
  color:#D946EF;
  margin-bottom:16px
}

.keyfacts-col-row > div a {
  display:block;
  color:#E5E7EB;
  font-size:15px;
  text-decoration:none;
  padding:5px 0;
  transition:color 0.15s
}

.keyfacts-col-row > div a:hover {
  color:#fff
}

.keyfacts-chunk {
  color:#9CA3AF;
  font-size:13px;
  line-height:1.7;
  max-width:320px
}

.keyfacts-element-entity {
  text-align:right
}

.keyfacts-element-entity .colophon-element {
  text-align:right !important;
  padding:0
}

.keyfacts-rulepart {
  height:1px;
  background:rgba(255,255,255,0.08);
  max-width:1200px;
  margin:28px auto
}

.keyfacts-midpart {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
  max-width:1200px;
  margin:0 auto
}

.keyfacts-stamps {
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap
}

.keyfacts-cash {
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap
}

.keyfacts-cash img {
  height:28px;
  width:auto;
  max-width:84px;
  object-fit:contain
}

.keyfacts-getlinks {
  display:flex;
  gap:12px;
  flex-wrap:wrap
}

.keyfacts-apppart {
  display:inline-flex;
  align-items:center;
  gap:9px;
  background:#D946EF;
  color:#0b0d12;
  border-radius:10px;
  padding:8px 18px;
  text-decoration:none;
  font-weight:700
}

.keyfacts-apppart:hover {
  filter:brightness(1.06)
}

.keyfacts-apppart-pic svg {
  width:22px;
  height:22px;
  display:block
}

.keyfacts-apppart-tx {
  display:flex;
  flex-direction:column;
  line-height:1.15
}

.keyfacts-apppart-tx span {
  font-size:10px;
  font-weight:600;
  opacity:0.85;
  text-transform:uppercase;
  letter-spacing:0.5px
}

.keyfacts-apppart-tx strong {
  font-size:14px
}

.keyfacts-social {
  display:flex;
  justify-content:center;
  align-items:center;
  gap:20px;
  margin:4px auto 8px
}

.keyfacts-item {
  color:#9CA3AF;
  display:inline-flex;
  transition:color 0.15s
}

.keyfacts-item svg {
  width:22px;
  height:22px;
  display:block
}

.keyfacts-item:hover {
  color:#D946EF
}

.keyfacts-bottom {
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:start;
  max-width:1200px;
  margin:20px auto 0
}

.keyfacts-legal-text {
  color:#6B7280;
  font-size:12px;
  line-height:1.75;
  max-width:900px
}

.keyfacts-detail {
  color:#9CA3AF;
  font-size:13px;
  white-space:nowrap
}

@media (max-width:768px) {
  .keyfacts-top {
    grid-template-columns:1fr
  }
  .keyfacts-col-row {
    grid-template-columns:1fr 1fr;
    gap:24px
  }
  .keyfacts-element-entity {
    text-align:left
  }
  .keyfacts-element-entity .colophon-element {
    text-align:left !important
  }
  .keyfacts-midpart {
    flex-direction:column;
    align-items:flex-start
  }
  .keyfacts-bottom {
    grid-template-columns:1fr
  }
  .keyfacts-detail {
    white-space:normal
  }
}

@media (max-width:420px) {
  .keyfacts-col-row {
    grid-template-columns:1fr
  }
}

.infobox-head {
  display:flex;
  align-items:center;
  gap:24px;
  max-width:1200px;
  margin:0 auto 34px
}

.infobox-node {
  flex:1;
  height:1px;
  background:rgba(255,255,255,0.10)
}

.infobox-rulepart {
  height:1px;
  background:rgba(255,255,255,0.08);
  max-width:1200px;
  margin:28px auto
}

.infobox-top {
  display:grid;
  grid-template-columns:1.3fr 1.4fr auto;
  gap:48px;
  max-width:1200px;
  margin:0 auto;
  align-items:start
}

.infobox-member {
  color:#9CA3AF;
  font-size:14px;
  line-height:1.6;
  margin:0 0 22px;
  max-width:320px
}

.infobox-area-caption {
  color:#fff;
  font-weight:700;
  font-size:18px;
  margin-bottom:6px
}

.infobox-area {
  color:#9CA3AF;
  font-size:14px;
  line-height:1.6;
  margin:0 0 26px;
  max-width:260px
}

.infobox-contact {
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#E5E7EB;
  font-size:15px;
  text-decoration:none;
  transition:color 0.15s
}

.infobox-item svg {
  width:20px;
  height:20px;
  display:block;
  color:#D946EF
}

.infobox-contact:hover {
  color:#fff
}

.infobox-menucol {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px
}

.infobox-menucol > div a {
  display:block;
  color:#E5E7EB;
  font-size:15px;
  text-decoration:none;
  padding:6px 0;
  transition:color 0.15s
}

.infobox-menucol > div a:hover {
  color:#fff
}

.infobox-trustpart {
  display:flex;
  justify-content:flex-end
}

.infobox-trustpart .safeplay-band {
  justify-content:flex-end;
  max-width:220px
}

.infobox-bottom {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
  max-width:1200px;
  margin:0 auto
}

.infobox-detail {
  color:#6B7280;
  font-size:13px
}

.infobox-cash {
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  justify-content:flex-end
}

.infobox-cash img {
  height:26px;
  width:auto;
  max-width:62px;
  object-fit:contain;
  opacity:0.85
}

@media (max-width:768px) {
  .infobox-top {
    grid-template-columns:1fr;
    gap:28px
  }
  .infobox-node {
    display:none
  }
  .infobox-trustpart,
  .infobox-trustpart .safeplay-band {
    justify-content:flex-start
  }
  .infobox-bottom,
  .infobox-cash {
    justify-content:flex-start
  }
}

@media (max-width:420px) {
  .infobox-menucol {
    grid-template-columns:1fr
  }
}

@media (max-width:1024px) {
  .header-box {
    gap:16px
  }
  .piece-navbar {
    gap:14px
  }
  .piece-navbar a {
    font-size:13px
  }
  .spotlight-main {
    padding:40px 36px
  }
  .spotlight-caption {
    font-size:38px
  }
  .pointpart-point {
    grid-template-columns:repeat(4,1fr);
    gap:12px
  }
  .banking-point {
    grid-template-columns:repeat(3,1fr)
  }
  .rankline-band {
    gap:12px;
    padding:12px 16px
  }
  .pointpart-node-inner {
    padding:24px 28px;
    gap:28px
  }
  .casinoarea-offer-band {
    grid-template-columns:auto 1fr auto auto !important;
    gap:16px !important
  }
  .machine-bannerpart {
    grid-template-columns:220px 1fr;
    gap:24px
  }
}

@media (max-width:768px) {
  .header-box {
    height:56px
  }
  .node-brand {
    flex-shrink:1;
    min-width:0
  }
  .node-brand img {
    max-height:32px;
    max-width:140px
  }
  .piece-navbar {
    display:none
  }
  .hamburger-play {
    display:flex
  }
  .phoneonly-menu {
    display:block
  }
  .header-place .chunk-bit {
    display:none
  }
  .header-place {
    gap:6px
  }
  .chunk-partbit,
  .chunk-bit {
    padding:0 16px;
    height:40px;
    font-size:12px
  }
  .spotlight {
    min-height:320px
  }
  .spotlight-slidepage {
    min-height:320px
  }
  .spotlight-img {
    width:100%;
    height:100%;
    position:absolute;
    inset:0;
    object-fit:cover
  }
  .spotlight-softshow {
    background:linear-gradient(to top,#1f0d21 5%,#1f0d21dd 35%,#1f0d2188 55%,transparent 80%)
  }
  .spotlight-main {
    max-width:100%;
    padding:0 20px 40px;
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    top:auto
  }
  .spotlight-subheading {
    font-size:13px
  }
  .spotlight-caption {
    font-size:28px
  }
  .spotlight-cta {
    padding:14px 32px !important;
    font-size:14px !important;
    width:100%;
    text-align:center
  }
  .spotlight-part {
    bottom:14px;
    justify-content:flex-start;
    padding-left:20px
  }
  main {
    padding:24px 20px;
    gap:28px
  }
  main > * {
    max-width:100% !important;
    overflow:hidden
  }
  .module-caption {
    font-size:17px;
    margin-bottom:14px
  }
  .sheet-unitpart.module-caption {
    font-size:20px;
    margin-bottom:0;
    text-transform:none
  }
  .pointpart-point {
    grid-template-columns:repeat(3,1fr);
    gap:8px
  }
  .onegame-node {
    border-radius:10px
  }
  .plain-main {
    overflow-wrap:break-word;
    word-wrap:break-word;
    max-width:100% !important
  }
  .plain-main * {
    max-width:100%
  }
  .plain-main h1 {
    font-size:32px;
    line-height:1.2
  }
  .plain-main h2 {
    font-size:27px;
    margin:28px 0 14px;
    line-height:1.2
  }
  .plain-main h3 {
    font-size:23px;
    margin:22px 0 10px;
    line-height:1.2
  }
  .plain-main p {
    font-size:16px;
    line-height:1.5;
    margin-bottom:16px
  }
  .plain-main li {
    font-size:16px;
    line-height:1.5
  }
  .plain-main table {
    font-size:12px;
    display:table
  }
  .plain-main th,
  .plain-main td {
    padding:8px 10px
  }
  .plain-main th {
    font-size:11px
  }
  .plain-main > div {
    overflow-x:auto;
    -webkit-overflow-scrolling:touch
  }
  .plain-main img {
    border-radius:10px;
    margin:14px 0;
    height:auto !important;
    max-width:100% !important
  }
  .plain-main > img,
  .plain-main > p > img {
    max-width:95% !important
  }
  .qna-factor {
    padding:20px 16px;
    border-radius:12px
  }
  .index-entity {
    padding:16px !important;
    overflow:hidden
  }
  .index-link {
    overflow:hidden;
    text-overflow:ellipsis
  }
  .index-link span {
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    min-width:0
  }
  .qna-point {
    grid-template-columns:1fr
  }
  .qna-row {
    padding:14px 16px;
    min-height:48px
  }
  .qna-askpart {
    font-size:14px
  }
  .qna-ansbit {
    font-size:14px;
    line-height:1.5
  }
  .winfeed-podiumbox {
    grid-template-columns:1fr;
    gap:8px
  }
  .winfeed-podiumbox-total {
    font-size:20px
  }
  .score-unit {
    grid-template-columns:1fr;
    gap:20px;
    padding:20px 16px
  }
  .score-area {
    font-size:48px
  }
  .module {
    grid-template-columns:1fr
  }
  .hitlist .rankline-band {
    grid-template-columns:24px 1fr auto;
    gap:10px;
    padding:12px 14px
  }
  .hitlist .rankline-band .chunk-partbit {
    padding:8px 14px;
    font-size:11px;
    height:auto;
    min-height:36px
  }
  .colophon-col-row {
    grid-template-columns:1fr 1fr !important;
    gap:20px
  }
  footer {
    padding:28px 16px 16px
  }
  .banking-point {
    grid-template-columns:1fr 1fr;
    gap:8px
  }
  .banking-node {
    padding:12px 10px
  }
  .pointpart-node-inner {
    grid-template-columns:1fr;
    gap:16px;
    padding:18px 14px
  }
  .machine-bannerpart {
    grid-template-columns:1fr;
    gap:20px
  }
  .machine-data-point {
    grid-template-columns:repeat(2,1fr);
    gap:6px
  }
  .bonus-calc {
    grid-template-columns:1fr !important;
    gap:20px !important
  }
  .casinoarea-offer-band {
    grid-template-columns:1fr !important;
    gap:12px !important;
    text-align:center
  }
  .casinoarea-offer-band > div {
    justify-content:center
  }
  .winboard {
    padding:18px 14px !important
  }
  .winboard-point {
    grid-template-columns:1fr !important;
    gap:16px !important
  }
  .providers-point {
    grid-template-columns:repeat(2,1fr) !important
  }
  .picture-tagline {
    flex-direction:column !important;
    padding:16px !important;
    gap:16px !important
  }
  .picture-tagline img {
    width:100%;
    max-height:280px
  }
  .picture-centred {
    max-width:95%
  }
  .cta-play {
    width:100%;
    justify-content:center
  }
  .phoneonly-navbar-link {
    min-height:44px;
    display:flex;
    align-items:center
  }
}

@media (max-width:480px) {
  .header-box {
    gap:8px
  }
  .language-curpart {
    display:none
  }
  .language-bit > summary {
    padding:6px;
    gap:4px
  }
  .spotlight-main {
    padding:24px 16px 48px
  }
  .spotlight-caption {
    font-size:24px
  }
  .spotlight-subheading {
    font-size:11px
  }
  .plain-main h1 {
    font-size:28px
  }
  .plain-main h2 {
    font-size:24px
  }
  .plain-main h3 {
    font-size:21px
  }
  .pointpart-point {
    grid-template-columns:repeat(3,1fr);
    gap:6px
  }
  .colophon-col-row {
    grid-template-columns:1fr !important;
    gap:16px
  }
  .banking-point {
    grid-template-columns:1fr
  }
  .hitlist .rankline-band {
    grid-template-columns:24px 1fr;
    gap:8px
  }
  .hitlist .rankline-band .chunk-partbit {
    width:100%;
    justify-content:center
  }
  .pointpart-node-inner {
    padding:16px 12px
  }
  .score-unit {
    padding:16px 12px
  }
  .qna-factor {
    padding:16px 12px
  }
  main {
    padding:20px 16px;
    gap:24px
  }
}
