html,
body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  font-family: "Press Start 2P", monospace;
  background: transparent;
  color: #ffffff;
  overflow-x: hidden;
  font-size: 10px;
}

html {
  scroll-behavior: smooth;
}

body {
  position: relative;
  background-color: #121213;
  background-image:
    radial-gradient(circle at 20% 18%, rgba(255, 178, 44, 0.1), transparent 26%),
    radial-gradient(circle at 82% 18%, rgba(255, 130, 24, 0.08), transparent 20%),
    linear-gradient(180deg, #0f1012 0%, #17181b 45%, #0f1012 100%);
  line-height: 1.8;
  -webkit-touch-callout: none;
}

body.is-loading {
  overflow: hidden;
}

.page-loader {
  position: fixed;
  inset: 0;
  z-index: 2500;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background:
    radial-gradient(circle at top, rgba(255, 178, 44, 0.08), transparent 24%),
    rgba(4, 4, 6, 0.78);
  backdrop-filter: blur(18px) saturate(0.8);
  -webkit-backdrop-filter: blur(18px) saturate(0.8);
  transition: opacity 0.45s ease, visibility 0.45s ease;
}

.page-loader.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.page-loader__panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: min(100%, 320px);
  min-width: min(100%, 320px);
  min-height: 170px;
  padding: 22px 22px 20px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(18, 18, 22, 0.92), rgba(9, 9, 11, 0.9));
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 28px 58px rgba(0, 0, 0, 0.42);
  contain: layout paint;
}

.page-loader__logo {
  width: 82px;
  height: 82px;
  flex-shrink: 0;
  border-radius: 16px;
  filter: drop-shadow(0 0 16px rgba(255, 178, 44, 0.32));
  animation: loaderFloat 1.8s ease-in-out infinite;
}

.page-loader__text {
  display: block;
  width: 100%;
  max-width: 270px;
  min-height: 14px;
  font-size: 8px;
  line-height: 1.6;
  color: #ffcf73;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
}

.page-loader__bar {
  position: relative;
  width: 180px;
  max-width: 100%;
  height: 8px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.08);
}

.page-loader__bar::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 -35%;
  width: 42%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ffcf60, #ffaa12);
  box-shadow: 0 0 16px rgba(255, 178, 44, 0.35);
  animation: loaderBar 1.2s ease-in-out infinite;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -4;
  pointer-events: none;
  opacity: 0.32;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
  background-size: 16px 16px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

img {
  display: block;
  max-width: 100%;
  user-select: none;
  -webkit-user-drag: none;
  pointer-events: none;
}

a {
  color: inherit;
}

button {
  font: inherit;
}

canvas#stars,
#stars {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  z-index: -3;
  display: block;
  pointer-events: none;
  background: transparent;
}

#top {
  position: relative;
  top: -88px;
  height: 0;
  visibility: hidden;
}

.wrapper {
  position: relative;
  z-index: 1;
}

.main-header,
.hero,
.section,
#specials,
.main-footer {
  position: relative;
  z-index: 1;
}

.main-header {
  position: sticky;
  top: 0;
  min-height: 88px;
  padding: 0 28px;
  background: rgba(10, 10, 12, 0.9);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.25);
  z-index: 1000;
}

.logo-container {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-shrink: 0;
}

.logo-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  text-decoration: none;
}

.logo {
  height: 84px;
  width: auto;
  border-radius: 14px;
  transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.32s ease, filter 0.32s ease;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.24);
}

.logo:hover {
  transform: none;
  filter: none;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.24);
}

.main-nav {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  z-index: 1001;
}

.main-nav a {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 16px;
  color: #ffffff;
  text-decoration: none;
  border-radius: 999px;
  font-size: 9px;
  line-height: 1.4;
  transition: color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  border: 1px solid transparent;
}

.main-nav .nav-soon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 10px 16px;
  color: rgba(255, 225, 168, 0.88);
  border-radius: 999px;
  border: 1px dashed rgba(255, 190, 74, 0.2);
  background: rgba(255, 178, 44, 0.06);
  user-select: none;
  cursor: default;
}

.main-nav .nav-soon.with-divider::before {
  content: "";
  position: absolute;
  left: -5px;
  top: 50%;
  width: 1px;
  height: 12px;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.08);
}

.nav-soon__tag {
  display: inline-block;
  padding: 4px 7px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(255, 207, 115, 0.18), rgba(255, 170, 18, 0.18));
  color: #ffd57d;
  font-size: 6px;
  line-height: 1.4;
  letter-spacing: 0.06em;
  box-shadow: inset 0 0 0 1px rgba(255, 190, 74, 0.14);
}

.main-nav a:hover,
.main-nav a:focus-visible {
  color: #ffcf73;
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 0 18px rgba(255, 178, 44, 0.08);
}

.main-nav a.is-active,
.main-nav a[aria-current="page"] {
  color: #ffcf73;
  background: rgba(255, 178, 44, 0.12);
  border-color: rgba(255, 178, 44, 0.2);
  box-shadow:
    0 0 18px rgba(255, 178, 44, 0.12),
    inset 0 0 12px rgba(255, 178, 44, 0.08);
}

.hamburger {
  display: none;
  width: 42px;
  height: 32px;
  flex-direction: column;
  justify-content: space-between;
  cursor: pointer;
  flex-shrink: 0;
  user-select: none;
}

.hamburger span {
  display: block;
  width: 100%;
  height: 4px;
  border-radius: 999px;
  background-color: #ffffff;
  transition: transform 0.3s ease, opacity 0.3s ease, background-color 0.3s ease;
}

.hamburger.active span {
  background-color: #ffb22c;
}

.hamburger.active span:nth-child(1) {
  transform: translateY(14px) rotate(45deg);
}

.hamburger.active span:nth-child(2) {
  opacity: 0;
}

.hamburger.active span:nth-child(3) {
  transform: translateY(-14px) rotate(-45deg);
}

.promo-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

#promo-code {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 16px;
  min-width: 140px;
  min-height: 42px;
  max-width: 100%;
  border-radius: 14px;
  color: #111111;
  text-decoration: none;
  white-space: nowrap;
  font-size: 8px;
  line-height: 1.4;
  background: linear-gradient(135deg, #ffcf60, #ffbe3d, #ffaa12, #ffcf60);
  background-size: 240% 240%;
  box-shadow:
    0 0 10px rgba(255, 190, 60, 0.36),
    0 6px 18px rgba(0, 0, 0, 0.28),
    inset 0 0 8px rgba(255, 255, 255, 0.2);
  animation: goldGlow 6s ease-in-out infinite;
  overflow: hidden;
}

#promo-code::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -120%;
  width: 60%;
  height: 200%;
  background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.55) 50%, transparent 100%);
  transform: skewX(-25deg);
  transition: left 0.8s ease;
}

#promo-code:hover::before,
#promo-code:focus-visible::before {
  left: 140%;
}

#promo-code:hover,
#promo-code:focus-visible {
  filter: brightness(1.04);
  box-shadow:
    0 0 16px rgba(255, 214, 0, 0.5),
    0 6px 18px rgba(0, 0, 0, 0.28),
    inset 0 0 8px rgba(255, 255, 255, 0.2);
}

#promo-code img {
  width: 15px;
  height: 15px;
  flex-shrink: 0;
}

.hero {
  width: min(100%, 1280px);
  margin: 0 auto;
  padding: 56px 20px 30px;
  text-align: center;
}

.hero-content {
  position: relative;
  z-index: 2;
  display: inline-block;
  width: min(100%, 760px);
  padding: 28px 24px 34px;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 24px 54px rgba(0, 0, 0, 0.28);
  overflow: hidden;
}

.hero-content::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top left, rgba(255, 178, 44, 0.12), transparent 28%),
    radial-gradient(circle at bottom right, rgba(255, 255, 255, 0.04), transparent 26%);
  pointer-events: none;
}

.hero-content p {
  position: relative;
  max-width: 620px;
  margin: 18px auto 0;
  font-size: 1.2rem;
  opacity: 1;
  line-height: 1.9;
  text-align: center;
  color: #ffffff;
  padding: 14px 18px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  background: linear-gradient(180deg, rgba(4, 5, 8, 0.62), rgba(4, 5, 8, 0.38));
  box-shadow:
    0 16px 30px rgba(0, 0, 0, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  text-shadow:
    0 5px 22px rgba(0, 0, 0, 0.95),
    0 0 30px rgba(255, 255, 255, 0.14),
    0 0 54px rgba(0, 0, 0, 0.46);
}

.character-img {
  position: relative;
  width: min(100%, 300px);
  margin: 18px auto 20px;
  filter: drop-shadow(0 0 14px rgba(255, 145, 0, 0.5));
  animation: heroFloat 4.8s ease-in-out infinite, heroGlow 6s linear infinite;
  transition: transform 0.35s ease, filter 0.35s ease;
}

.character-img:hover {
  transform: scale(1.04) rotate(-1deg);
  filter: drop-shadow(0 0 24px rgba(255, 145, 0, 0.62));
}

.hero-buttons {
  position: relative;
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-top: 28px;
  flex-wrap: wrap;
}

.hero-btn {
  min-width: 260px;
  min-height: 68px;
  padding: 18px 34px;
  font-size: 11px;
}

#giveaways-button {
  color: #121212;
  background: linear-gradient(135deg, #ffe07a, #ffbf26, #ff9f1a);
  box-shadow:
    0 14px 28px rgba(0, 0, 0, 0.2),
    0 0 22px rgba(255, 178, 44, 0.18);
  border-radius: 24px 10px 24px 10px;
}

#giveaways-button .btn-icon {
  filter: brightness(0);
}

#giveaways-button:hover,
#giveaways-button:focus-visible {
  color: #111111;
  background: linear-gradient(135deg, #ffb62a, #ffd76d, #ffb62a);
  box-shadow:
    0 14px 28px rgba(0, 0, 0, 0.2),
    0 0 26px rgba(255, 178, 44, 0.24);
}

#giveaways-button:hover .btn-icon,
#giveaways-button:focus-visible .btn-icon {
  filter: brightness(0);
}

.btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 50px;
  padding: 12px 22px;
  font-size: 9px;
  line-height: 1.5;
  border-radius: 14px;
  background: linear-gradient(135deg, #ffffff, #ececec);
  color: #1b1b1b;
  text-decoration: none;
  border: none;
  box-shadow: 0 12px 22px rgba(0, 0, 0, 0.18);
  transition: background 0.25s ease, box-shadow 0.25s ease, color 0.25s ease, filter 0.25s ease;
}

.btn:hover,
.btn:focus-visible {
  background: linear-gradient(135deg, #ffcf68, #ffab24);
  color: #ffffff;
  box-shadow:
    0 0 10px rgba(255, 178, 44, 0.28),
    0 0 24px rgba(255, 178, 44, 0.24),
    0 12px 22px rgba(0, 0, 0, 0.18);
  filter: brightness(1.03);
}

.btn-icon {
  width: 18px;
  height: 18px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  filter: brightness(0);
  transition: filter 0.25s ease;
}

.giveaways-icon {
  background-image: url("https://cdn-icons-png.freepik.com/512/9075/9075357.png?ga=GA1.1.292190565.1765117586");
}

.partners-icon {
  background-image: url("https://cdn-icons-png.freepik.com/512/8189/8189221.png?ga=GA1.1.292190565.1765117586");
}

.btn:hover .btn-icon,
.btn:focus-visible .btn-icon {
  filter: brightness(0) invert(1);
}

.floating-images {
  position: relative;
  width: 100%;
  max-width: 980px;
  min-height: 440px;
  margin: -380px auto 0;
  pointer-events: none;
}

.floating-images img {
  position: absolute;
  width: clamp(90px, 11vw, 160px);
  opacity: 0.95;
  filter: drop-shadow(0 0 16px rgba(0, 0, 0, 0.55));
}

.floating-images img:nth-child(1) { top: -24%; left: 37%; animation: floatCrazy1 7.2s infinite ease-in-out; }
.floating-images img:nth-child(2) { top: -18%; right: 15%; animation: floatCrazy2 6.4s infinite ease-in-out; }
.floating-images img:nth-child(3) { bottom: 38%; right: 20%; animation: floatCrazy3 7.4s infinite ease-in-out; }
.floating-images img:nth-child(4) { bottom: 36%; left: 19%; animation: floatCrazy2 6.8s infinite ease-in-out; }
.floating-images img:nth-child(5) { top: -16%; left: 14%; animation: floatCrazy1 6.2s infinite ease-in-out; }

.section,
#specials {
  width: min(100%, 1280px);
  margin: 0 auto;
  padding: 72px 24px;
}

.dark-bg {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02));
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 24px 56px rgba(0, 0, 0, 0.22);
}
.partners-title,
.videos-title,
.giveaways-title,
.specials-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin: 0 auto 44px;
  width: 100%;
  max-width: 980px;
}

.partners-title h2,
.videos-title h2,
.giveaways-title h2,
.specials-title h2 {
  margin: 0;
  font-size: 3rem;
  line-height: 1.6;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}

.partners-title h2 {
  background: linear-gradient(90deg, #ffffff, #ff7f00);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.videos-title h2 {
  background: linear-gradient(90deg, #ffffff, #ff4aa8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.giveaways-title h2 {
  background: linear-gradient(90deg, #ffffff 40%, #0dff00 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.specials-title h2 {
  background: linear-gradient(90deg, #ffffff, #c084fc, #ffffff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.partners-title-line,
.title-line {
  flex: 1;
  height: 3px;
  max-width: 240px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.9), transparent);
}

.partners-title-line {
  background: linear-gradient(90deg, transparent, #ff7f00, transparent);
}

.videos-title .title-line {
  background: linear-gradient(90deg, transparent, #ff4aa8, transparent);
}

.giveaways-title .title-line {
  background: linear-gradient(90deg, transparent, rgba(13, 255, 0, 0.8), transparent);
}

.specials-title .title-line {
  background: linear-gradient(90deg, transparent, #c084fc, transparent);
}

.partners-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 22px;
  align-items: stretch;
}

.partner-card {
  background: linear-gradient(180deg, rgba(35, 34, 34, 0.94), rgba(24, 24, 24, 0.94));
  padding: 88px 20px 22px;
  border-radius: 20px;
  text-align: center;
  color: white;
  border: 2px solid rgba(255, 255, 255, 0.16);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.34);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  cursor: default;
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: transform;
  transition: transform 0.16s ease-out, box-shadow 0.16s ease-out, border-color 0.16s ease-out;
}

.partner-card::before {
  display: none;
}

.partner-card.border-hellcase {
  border-color: rgba(255, 97, 0, 0.5);
}

.partner-card.border-skinclub {
  border-color: rgba(255, 0, 186, 0.44);
}

.partner-card.border-clash {
  border-color: rgba(255, 206, 93, 0.5);
}

.partner-card.border-skinbaron {
  border-color: rgba(82, 50, 200, 0.44);
}

.partner-card:hover {
  transform: translateY(-7px) scale(1.015);
  box-shadow: 0 24px 40px rgba(0, 0, 0, 0.34);
}

.partner-card h3 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  min-height: 70px;
  margin: 0;
  padding: 16px 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px 18px 0 0;
  color: #ffffff;
  font-size: 10px;
  line-height: 1.6;
  text-shadow:
    0 2px 8px rgba(0, 0, 0, 0.42),
    0 0 14px rgba(0, 0, 0, 0.18);
}

.border-hellcase h3 { background: linear-gradient(135deg, #ff7b00, #ff4c00); }
.border-skinclub h3 { background: linear-gradient(135deg, #ff00ba, #ff4aa8); }
.border-clash h3 { background: linear-gradient(135deg, #ffd95d, #ffb819); }
.border-skinbaron h3 { background: linear-gradient(135deg, #5232c8, #7d60ff); }

.partner-trophy {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 22px;
  height: 22px;
  filter: brightness(0) invert(1) drop-shadow(2px 2px 4px rgba(0,0,0,0.6));
  z-index: 3;
  transition: none;
  transform: none !important;
}

.partner-card:hover .partner-trophy,
.partner-card:focus-within .partner-trophy {
  transform: none !important;
}

.logo-wrapper {
  width: 100%;
  min-height: 110px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.hellcase-effect .partner-logo {
  width: 210px;
  height: 90px;
  object-fit: contain;
}

.clash-effect .partner-logo {
  width: 210px;
  height: 90px;
  object-fit: contain;
}

.partner-logo {
  width: 190px;
  height: 84px;
  object-fit: contain;
  transition: transform 0.16s ease-out;
}

.partner-description {
  margin: 14px 0 0;
  font-size: 10px;
  line-height: 1.9;
  color: #ffffff;
  text-shadow:
    0 2px 10px rgba(0, 0, 0, 0.82),
    0 0 18px rgba(0, 0, 0, 0.18);
}

.code-block {
  width: 100%;
  margin-top: 18px;
}

.code-block a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 46px;
  padding: 10px 16px;
  color: white;
  text-decoration: none;
  border-radius: 0;
  font-size: 8px;
  line-height: 1.5;
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
  clip-path: polygon(8% 0, 100% 0, 92% 100%, 0 100%);
  transition: filter 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
  cursor: pointer;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.36);
}

.code-block a:hover,
.code-block a:focus-visible {
  filter: brightness(1.05);
  box-shadow: 0 12px 22px rgba(0, 0, 0, 0.2);
  transform: translateY(-0.5px);
}

.partner-card.is-button-hovered .partner-logo {
  transform: translateY(-4px) scale(1.02);
}

.hellcase-button a { background: linear-gradient(135deg, #ff7b00, #ff4b00); }
.skinclub-button a { background: linear-gradient(135deg, #ff00ba, #ff4aa8); }
.clash-button a { background: linear-gradient(135deg, #ffd95d, #ffb819); color: #ffffff; }
.skinbaron-button a { background: linear-gradient(135deg, #5232c8, #7d60ff); }

#bonuses .partner-card h3 {
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.28);
}

#bonuses .partner-trophy {
  width: 30px;
  height: 30px;
  padding: 4px;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.28);
  border: 1px solid rgba(255, 255, 255, 0.06);
  filter: brightness(0) invert(1);
}

#bonuses .partner-description {
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(0, 0, 0, 0.22);
  border: 1px solid rgba(255, 255, 255, 0.05);
  text-shadow: none;
}

#bonuses .code-block a {
  text-shadow: none;
}

#bonuses .code-block a:hover,
#bonuses .code-block a:focus-visible {
  filter: brightness(0.84);
  box-shadow: 0 12px 22px rgba(0, 0, 0, 0.24);
}

.videos-grid {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 22px;
}

.video-card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: min(100%, 360px);
  flex: 0 1 360px;
  min-height: 320px;
  overflow: hidden;
  border-radius: 18px;
  border: 2px solid rgba(255, 255, 255, 0.12);
  background: linear-gradient(180deg, rgba(34, 34, 34, 0.96), rgba(18, 18, 18, 0.96));
  color: #fff;
  text-decoration: none;
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.24);
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.video-card:hover,
.video-card:focus-visible {
  border-color: rgba(255, 178, 44, 0.34);
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.24), 0 0 20px rgba(255, 178, 44, 0.1);
}

.video-card img,
.video-skeleton-media {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.video-card > img {
  transition: transform 0.45s ease, filter 0.35s ease;
}

.video-card:hover > img,
.video-card:focus-visible > img {
  transform: scale(1.04);
  filter: saturate(1.08) brightness(1.15);
}

.video-info {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 15px 16px 58px;
  flex: 1;
}

.video-info--compact {
  padding-bottom: 18px;
  justify-content: center;
}

.video-card--fallback .video-info h3 {
  text-align: center;
}

.video-info h3 {
  margin: 0;
  font-size: 10px;
  line-height: 1.9;
}

.video-date,
.video-length {
  position: absolute;
  bottom: 16px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  border-radius: 10px;
  background-color: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.08);
  font-size: 7px;
  line-height: 1.5;
  color: #ffffff;
}

.video-date { left: 14px; }
.video-length { right: 14px; }

.video-date .clock-icon,
.video-length .duration-icon {
  width: 12px;
  height: 12px;
  filter: brightness(0) invert(1) !important;
}

.video-card:hover .clock-icon,
.video-card:hover .duration-icon,
.video-card:focus-visible .clock-icon,
.video-card:focus-visible .duration-icon {
  filter: brightness(0) invert(1) !important;
}

.video-card.skeleton {
  pointer-events: none;
}

.video-skeleton-media,
.skeleton-line {
  background: linear-gradient(90deg, rgba(255,255,255,0.05), rgba(255,255,255,0.12), rgba(255,255,255,0.05));
  background-size: 200% 100%;
  animation: shimmer 1.5s linear infinite;
}

.video-card.skeleton .video-info {
  padding-bottom: 16px;
}

.skeleton-line {
  height: 12px;
  border-radius: 999px;
}

.skeleton-title { width: 78%; height: 16px; }
.skeleton-subtitle { width: 56%; }

.skeleton-chip-row {
  display: flex;
  gap: 10px;
  margin-top: 8px;
}

.skeleton-chip {
  width: 90px;
  height: 28px;
  border-radius: 10px;
}

.specials-subtitle {
  max-width: 760px;
  margin: 0 auto 44px;
  text-align: center;
  color: #dfc2ff;
  font-size: 10px;
  line-height: 2;
  text-shadow:
    0 0 16px rgba(192, 132, 252, 0.16),
    0 0 28px rgba(151, 71, 255, 0.08);
}

.partners-subtitle {
  max-width: 760px;
  margin: -8px auto 38px;
  text-align: center;
  color: #ffd58a;
  font-size: 10px;
  line-height: 1.9;
  text-shadow:
    0 0 16px rgba(255, 178, 44, 0.16),
    0 0 26px rgba(255, 145, 0, 0.08);
}

.videos-subtitle,
.giveaways-subtitle {
  max-width: 760px;
  margin: -8px auto 38px;
  text-align: center;
  font-size: 10px;
  line-height: 1.9;
}

.videos-subtitle {
  color: #ff8fd0;
  text-shadow:
    0 0 16px rgba(255, 74, 168, 0.16),
    0 0 28px rgba(255, 74, 168, 0.08);
}

.giveaways-subtitle {
  color: #91ea92;
  text-shadow:
    0 0 16px rgba(110, 190, 111, 0.16),
    0 0 28px rgba(41, 181, 62, 0.08);
}

.specials-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 26px;
}

.promo-banner {
  --special-accent-rgb: 255, 178, 44;
  --special-accent-soft: rgba(255, 178, 44, 0.16);
  --special-accent-strong: rgba(255, 178, 44, 0.32);
  position: relative;
  min-height: 330px;
  display: block;
  border-radius: 22px;
  overflow: hidden;
  text-decoration: none;
  isolation: isolate;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow:
    0 22px 42px rgba(0, 0, 0, 0.28),
    0 0 0 1px rgba(var(--special-accent-rgb), 0.18),
    0 0 24px rgba(var(--special-accent-rgb), 0.08);
  transition: box-shadow 0.35s ease, border-color 0.35s ease, filter 0.35s ease;
}

.promo-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px solid rgba(var(--special-accent-rgb), 0.18);
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.03),
    inset 0 0 28px rgba(var(--special-accent-rgb), 0.08);
  pointer-events: none;
  z-index: 3;
  transition: border-color 0.35s ease, box-shadow 0.35s ease, opacity 0.35s ease;
}

.promo-banner:hover,
.promo-banner:focus-visible {
  border-color: rgba(var(--special-accent-rgb), 0.36);
  box-shadow:
    0 24px 46px rgba(0, 0, 0, 0.32),
    0 0 0 1px rgba(var(--special-accent-rgb), 0.24),
    0 0 36px rgba(var(--special-accent-rgb), 0.18);
}

.promo-banner:hover::before,
.promo-banner:focus-visible::before {
  border-color: rgba(var(--special-accent-rgb), 0.34);
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.04),
    inset 0 0 36px rgba(var(--special-accent-rgb), 0.12);
}

.promo-banner--hellcase {
  --special-accent-rgb: 255, 124, 0;
  --special-accent-soft: rgba(255, 124, 0, 0.16);
  --special-accent-strong: rgba(255, 124, 0, 0.34);
}

.promo-banner--skinclub {
  --special-accent-rgb: 216, 64, 255;
  --special-accent-soft: rgba(216, 64, 255, 0.16);
  --special-accent-strong: rgba(216, 64, 255, 0.32);
}

.banner-bg,
.banner-bg img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.banner-bg img {
  object-fit: cover;
  object-position: center top;
  transition: transform 0.55s ease, filter 0.4s ease;
}

.promo-banner:hover .banner-bg img,
.promo-banner:focus-visible .banner-bg img {
  transform: scale(1.065);
  filter: saturate(1.1) brightness(1.16);
}

.promo-banner.is-button-hovered .banner-bg img,
.promo-banner:has(.cta-button:hover) .banner-bg img,
.promo-banner:has(.cta-button:focus-visible) .banner-bg img {
  transform: scale(1.05);
  filter: saturate(1.08) brightness(1.12);
}

.banner-overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top right, rgba(var(--special-accent-rgb), 0.12), transparent 34%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.78));
  backdrop-filter: blur(0px) saturate(1);
  -webkit-backdrop-filter: blur(0px) saturate(1);
  z-index: 1;
  transition: background 0.35s ease, backdrop-filter 0.35s ease, -webkit-backdrop-filter 0.35s ease;
}

.promo-banner:hover .banner-overlay,
.promo-banner:focus-visible .banner-overlay,
.promo-banner.is-button-hovered .banner-overlay,
.promo-banner:has(.cta-button:hover) .banner-overlay,
.promo-banner:has(.cta-button:focus-visible) .banner-overlay {
  background:
    radial-gradient(circle at top right, rgba(var(--special-accent-rgb), 0.18), transparent 38%),
    linear-gradient(180deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.72));
  backdrop-filter: blur(8px) saturate(1.08);
  -webkit-backdrop-filter: blur(8px) saturate(1.08);
}

.banner-content {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 20px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.banner-corner-ribbon {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  background: linear-gradient(135deg, rgba(var(--special-accent-rgb), 0.34), rgba(var(--special-accent-rgb), 0.18));
  color: #ffffff;
  font-size: 7px;
  line-height: 1.4;
  letter-spacing: 0.1em;
  box-shadow:
    0 0 18px rgba(var(--special-accent-rgb), 0.16),
    0 10px 18px rgba(0, 0, 0, 0.18);
}

.glass-header {
  padding: 16px 18px;
  border-radius: 18px;
  border: 1px solid rgba(var(--special-accent-rgb), 0.22);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow:
    0 10px 24px rgba(0, 0, 0, 0.24),
    0 0 20px rgba(var(--special-accent-rgb), 0.08);
}

.orange.glass-header,
.promo-banner:first-child .glass-header {
  background: linear-gradient(180deg, rgba(255, 122, 0, 0.2), rgba(24, 13, 6, 0.46));
}

.promo-banner:nth-child(2) .glass-header {
  background: linear-gradient(180deg, rgba(120, 0, 255, 0.2), rgba(18, 8, 30, 0.5));
}

.banner-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.event-ribbon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 6px 12px;
  border-radius: 10px;
  color: #ffffff;
  font-size: 7px;
  line-height: 1.5;
  border: 1px solid rgba(255, 255, 255, 0.16);
  margin-bottom: 0;
  box-shadow: 0 0 16px rgba(var(--special-accent-rgb), 0.08);
}

.event-ribbon.orange { background: rgba(255, 133, 0, 0.32); }
.event-ribbon.purple { background: rgba(140, 0, 255, 0.28); }

.countdown-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 6px 12px;
  border-radius: 999px;
  border: 1px solid rgba(var(--special-accent-rgb), 0.28);
  background: rgba(10, 11, 15, 0.5);
  color: #fff1ca;
  font-size: 7px;
  line-height: 1.5;
  letter-spacing: 0.06em;
  white-space: nowrap;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 0 18px rgba(var(--special-accent-rgb), 0.12);
}

.glass-header h3 {
  margin: 0;
  font-size: 10px;
  line-height: 1.8;
  color: #ffffff;
}

.banner-content p {
  margin: 0;
  padding: 14px 16px;
  border-radius: 16px;
  line-height: 2;
  font-size: 8px;
  color: #ffffff;
  background: rgba(0, 0, 0, 0.34);
  border: 1px solid rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  min-height: 44px;
  padding: 10px 24px;
  border-radius: 22px 8px 22px 8px;
  background: #111111;
  color: #ffffff;
  font-size: 8px;
  line-height: 1.5;
  border: 1px solid rgba(255, 255, 255, 0.12);
  transition: background 0.25s ease, box-shadow 0.25s ease;
}

.promo-banner:first-child:hover .cta-button,
.promo-banner:first-child:focus-visible .cta-button {
  background: linear-gradient(90deg, #ff8500, #ff2c00);
  box-shadow: 0 10px 24px rgba(255, 60, 0, 0.22);
}

.promo-banner:nth-child(2):hover .cta-button,
.promo-banner:nth-child(2):focus-visible .cta-button {
  background: linear-gradient(90deg, #3600ff, #ff00ba);
  box-shadow: 0 10px 24px rgba(168, 85, 247, 0.22);
}
.giveaway-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 26px;
  align-items: stretch;
}

.giveaway-card {
  position: relative;
  background:
    linear-gradient(160deg, rgba(255, 196, 74, 0.08), transparent 30%),
    linear-gradient(180deg, rgba(26, 26, 26, 0.97), rgba(12, 12, 14, 0.98));
  border-radius: 18px;
  padding: 14px 14px 16px;
  text-align: center;
  border: 1px solid rgba(255, 196, 88, 0.3);
  box-shadow:
    0 20px 42px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease, background 0.3s ease;
}

.giveaway-card::before {
  display: none;
}

.giveaway-card:hover:not(:has(.giveaway-arrow:hover)):not(:has(.giveaway-arrow:active)):not(:has(.giveaway-arrow:focus-visible)) {
  transform: none;
  border-color: rgba(255, 205, 100, 0.52);
  box-shadow:
    0 28px 52px rgba(0, 0, 0, 0.42),
    0 0 26px rgba(255, 178, 44, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.giveaway-item::after {
  content: "";
  position: absolute;
  top: 44%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60%;
  height: 60%;
  opacity: 0.06;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  filter: brightness(0) invert(1);
  pointer-events: none;
}

.giveaway-item:nth-of-type(1)::after {
  background-image: url("https://bonkku.com/wp-content/uploads/2024/02/hellcase.png");
  width: 54%;
  height: 54%;
  background-size: 96%;
  opacity: 0.08;
}

.giveaway-item:nth-of-type(2)::after,
.giveaway-item:nth-of-type(3)::after {
  background-image: url("https://yt3.ggpht.com/oFs6ods_8PKS_2inZ-UvaY4mxDlZkNEewy0SPi_kt3OqWhc7_JRj4XS0vATRGVZHjUTNprvnne_2=s607-c-fcrop64=1,00000000ffffffff-nd-v1-rwa");
  background-size: 135%;
}

.pin-btn {
  position: absolute;
  top: 22px;
  left: 24px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: linear-gradient(135deg, #ffe36d, #ffbe2a);
  z-index: 5;
  pointer-events: none;
}

.pin-btn img {
  width: 28px;
  height: 28px;
  filter: brightness(0);
}

.giveaway-image-wrapper {
  position: relative;
  margin-bottom: 12px;
  border-radius: 16px;
  border: 2px solid rgba(255, 178, 44, 0.36);
  overflow: hidden;
  z-index: 2;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  transition: border-color 0.28s ease, box-shadow 0.28s ease;
}

.giveaway-image-wrapper::before {
  display: none;
}

.giveaway-card:hover:not(:has(.giveaway-arrow:hover)):not(:has(.giveaway-arrow:active)):not(:has(.giveaway-arrow:focus-visible)) .giveaway-image-wrapper {
  border-color: rgba(255, 205, 100, 0.56);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 0 24px rgba(255, 178, 44, 0.1);
}

.giveaway-img-carousel {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  overflow: hidden;
}

.giveaway-img-track {
  width: 100%;
  height: 100%;
}

.giveaway-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: relative;
  z-index: 1;
  transition: transform 0.55s ease, opacity 0.6s ease, filter 0.35s ease;
}

.giveaway-card.is-cta-hovered .giveaway-img.active,
.giveaway-card.is-cta-hovered > .giveaway-image-wrapper .giveaway-img.active {
  transform: scale(1.06);
  filter: brightness(1.04) saturate(1.04);
}

.carousel-dots {
  position: absolute;
  left: 50%;
  bottom: 12px;
  transform: translateX(-50%);
  display: flex;
  gap: 7px;
  z-index: 3;
  pointer-events: none;
}

.dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  border: none;
  background: rgba(255, 255, 255, 0.35);
  cursor: default;
  pointer-events: none;
  transition: background 0.25s ease, box-shadow 0.25s ease;
}

.dot.active {
  background: #ffb22c;
  box-shadow: 0 0 0 3px rgba(255, 178, 44, 0.18);
}

.giveaway-arrow {
  position: absolute;
  top: 50%;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(10, 10, 10, 0.56);
  color: #ffffff;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
  z-index: 4;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
  pointer-events: auto;
}

.giveaway-arrow.prev {
  left: 10px;
}

.giveaway-arrow.next {
  right: 10px;
}

.giveaway-arrow:not(:disabled):hover,
.giveaway-arrow:not(:disabled):focus-visible {
  background: rgba(255, 178, 44, 0.86);
  border-color: rgba(255, 178, 44, 0.9);
  color: #111111;
  box-shadow: 0 0 18px rgba(255, 178, 44, 0.22);
}

.giveaway-arrow:not(:disabled):active {
  transform: translateY(-50%) scale(0.96);
}

.giveaway-arrow:disabled {
  cursor: default;
  opacity: 0.72;
  pointer-events: auto;
  transform: translateY(-50%);
  background: rgba(10, 10, 10, 0.56);
  border-color: rgba(255, 255, 255, 0.16);
  color: #ffffff;
  box-shadow: none;
}

.giveaway-title {
  margin: 8px 0 0;
  font-size: 10px;
  line-height: 1.8;
  color: #ffffff;
  text-shadow: 0 0 18px rgba(255, 255, 255, 0.08);
}

.active-tag,
.inactive-tag,
.price-tag {
  position: absolute;
  top: 10px;
  font-size: 7px;
  line-height: 1.5;
  padding: 6px 10px;
  border-radius: 999px;
  color: #ffffff;
  z-index: 3;
  white-space: nowrap;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.active-tag,
.inactive-tag {
  right: 12px;
}

.active-tag {
  background-color: #00d746;
}

.inactive-tag {
  background-color: #ff3148;
}

.price-tag {
  top: 10px;
  right: 84px;
  bottom: auto;
  left: auto;
  background: linear-gradient(135deg, #ffce5d, #ffad19);
}

.price-tag.active-price {
  right: 84px;
}

.price-tag.inactive-price {
  right: 108px;
}

.btn.enter-btn {
  width: auto;
  min-width: 170px;
  min-height: 42px;
  margin-top: 14px;
  padding: 10px 18px;
  background: linear-gradient(135deg, #ffce5d, #ffad19);
  color: #111111;
  box-shadow: none;
  filter: none;
}

.btn.enter-btn:hover,
.btn.enter-btn:focus-visible {
  background: linear-gradient(135deg, #ffad19, #ffce5d);
  color: #111111;
  box-shadow: none;
  filter: none;
}

.main-footer {
  width: 100%;
  margin: 0;
  background: #111111;
  text-align: center;
  padding: 60px 20px 40px;
  color: white;
  border-radius: 0;
  border-top: 1px solid rgba(255,255,255,0.08);
  box-shadow: none;
}

.footer-logo {
  display: block;
  max-width: 250px;
  height: auto;
  margin: 0 auto 5px;
}

.disclaimer-text {
  max-width: 700px;
  margin: 0 auto 20px;
  color: rgba(255, 255, 255, 0.6);
  font-size: 7px;
  line-height: 1.6;
  text-align: center;
}

.social-wrapper {
  margin-top: 15px;
  text-align: left;
  padding: 5px 0;
}

.social-title {
  font-size: 14px;
  line-height: 1.8;
  font-style: italic;
  color: #ffffff;
  margin-bottom: 14px;
  text-shadow: 1px 1px 0 #000000, 2px 2px 0 #555555;
}

#social-links-footer {
  display: flex;
  justify-content: flex-start;
  gap: 12px;
  flex-wrap: wrap;
}

.social-icon {
  width: 50px;
  height: 50px;
  background: linear-gradient(145deg, #ffbf00, #d7a100);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.35);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}

.social-icon::after {
  content: "";
  position: absolute;
  width: 120%;
  height: 120%;
  background: radial-gradient(circle, rgba(255,255,255,0.25) 0%, transparent 70%);
  top: 50%;
  left: 50%;
  opacity: 0;
  transform: translate(-50%, -50%) scale(0.5);
  transition: opacity 0.35s ease, transform 0.35s ease;
}

.social-icon:hover::after,
.social-icon:focus-visible::after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.3);
}

.social-icon:hover,
.social-icon:focus-visible {
  background: linear-gradient(145deg, #af8300, #8b6800);
  transform: none;
  box-shadow:
    0 4px 10px rgba(0, 0, 0, 0.35),
    0 0 18px rgba(175, 131, 0, 0.2);
}

.social-icon img {
  width: 32px;
  height: 32px;
  filter: brightness(0);
  transition: filter 0.3s ease, transform 0.4s ease;
}

.social-icon:hover img,
.social-icon:focus-visible img {
  filter: brightness(0) invert(1);
  transform: none;
}

.social-icon:active {
  transform: none;
}

.age-warning {
  position: absolute;
  top: 80px;
  right: 100px;
  margin: 0;
  max-width: 250px;
  font-size: 7px;
  line-height: 1.3;
  color: white;
  text-align: left;
}

.red-18 {
  color: red;
  font-weight: bold;
  text-shadow: 0 0 4px red;
}

.plekis {
  position: fixed;
  border-radius: 50%;
  filter: blur(130px);
  z-index: -2;
  pointer-events: none;
  background: radial-gradient(circle, rgba(255, 178, 44, 0.34), transparent 70%);
}

.plekis-1 {
  bottom: -180px;
  right: -140px;
  width: 620px;
  height: 620px;
  opacity: 0.55;
}

.plekis-2 {
  top: 28%;
  left: -170px;
  width: 520px;
  height: 520px;
  opacity: 0.42;
}

.plekis-3 {
  top: 90px;
  right: 90px;
  width: 420px;
  height: 420px;
  opacity: 0.45;
}

.plekis-4 {
  top: 54%;
  left: 50%;
  width: 320px;
  height: 320px;
  transform: translate(-50%, -50%);
  opacity: 0.3;
}

body.menu-open {
  overflow: hidden;
}

* {
  scrollbar-width: auto;
  scrollbar-color: #ffb22c #2e2e2e;
}

::-webkit-scrollbar {
  width: 14px;
}

::-webkit-scrollbar-track {
  background: #2e2e2e;
  border-radius: 12px;
}

::-webkit-scrollbar-thumb {
  border-radius: 12px;
  border: 3px solid #2e2e2e;
  background: linear-gradient(180deg, #ffb22c, #ffd16c, #ff9f1c);
}

::-webkit-scrollbar-thumb:hover {
  box-shadow: 0 0 12px #ffb22c;
}

@keyframes heroGlow {
  0%, 100% {
    filter: drop-shadow(0 0 12px #ff9100) drop-shadow(0 0 24px rgba(255, 145, 0, 0.45));
  }
  50% {
    filter: drop-shadow(0 0 16px #ffb22c) drop-shadow(0 0 28px rgba(255, 178, 44, 0.52));
  }
}

@keyframes heroFloat {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-14px) scale(1.03); }
}

@keyframes floatCrazy1 {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(-9deg) scale(1); }
  25% { transform: translate3d(14px, -18px, 0) rotate(-1deg) scale(1.04); }
  50% { transform: translate3d(4px, -34px, 0) rotate(6deg) scale(1.08); }
  75% { transform: translate3d(-10px, -16px, 0) rotate(-3deg) scale(1.03); }
}

@keyframes floatCrazy2 {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(10deg) scale(1); }
  20% { transform: translate3d(-10px, -12px, 0) rotate(4deg) scale(1.02); }
  50% { transform: translate3d(-18px, -30px, 0) rotate(-6deg) scale(1.07); }
  80% { transform: translate3d(8px, -14px, 0) rotate(2deg) scale(1.03); }
}

@keyframes floatCrazy3 {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(-4deg) scale(1); }
  30% { transform: translate3d(12px, -14px, 0) rotate(4deg) scale(1.03); }
  60% { transform: translate3d(-8px, -28px, 0) rotate(-10deg) scale(1.08); }
  85% { transform: translate3d(10px, -10px, 0) rotate(2deg) scale(1.02); }
}

@keyframes goldGlow {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

@keyframes loaderFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes loaderBar {
  0% { transform: translateX(0); }
  100% { transform: translateX(320%); }
}

@keyframes loaderFillShine {
  0% { transform: translateX(-130%); }
  100% { transform: translateX(180%); }
}

@keyframes lineFlow {
  from { background-position: 0% 50%; }
  to { background-position: 200% 50%; }
}

@keyframes shimmer {
  from { background-position: 200% 50%; }
  to { background-position: 0% 50%; }
}

@media (max-width: 1024px) {
  .main-header {
    padding: 0 18px;
  }

  .main-nav a {
    padding: 10px 12px;
    font-size: 8px;
  }

  .logo {
    height: 72px;
  }

  .hero-btn {
    min-width: 200px;
    min-height: 54px;
    padding: 14px 24px;
  }
}

@media (max-width: 860px) {
  .main-header {
    min-height: 78px;
    padding: 10px 12px;
    gap: 8px;
    flex-wrap: nowrap;
  }

  .logo {
    height: 58px;
  }

  .logo-container {
    flex: 0 0 auto;
  }

  .hamburger {
    display: flex;
    order: 3;
    width: 32px;
    height: 24px;
    margin-left: 6px;
    flex: 0 0 auto;
  }

  .hamburger span {
    height: 3px;
  }

  .hamburger.active span:nth-child(1) {
    transform: translateY(10px) rotate(45deg);
  }

  .hamburger.active span:nth-child(3) {
    transform: translateY(-10px) rotate(-45deg);
  }

  .main-nav {
    display: flex;
    position: absolute;
    top: calc(100% + 8px);
    left: 10px;
    right: 10px;
    width: auto;
    flex-direction: column;
    gap: 10px;
    padding: 18px 16px;
    border-radius: 22px;
    background: rgba(12, 12, 16, 0.96);
    box-shadow: 0 24px 42px rgba(0, 0, 0, 0.34);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-12px) scale(0.97);
    transform-origin: top center;
    transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s ease;
  }

  .main-nav.show {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
  }

  .main-nav a {
    width: 100%;
    min-height: 52px;
    font-size: 8px;
  }

  .main-nav .nav-soon {
    width: 100%;
    min-height: 52px;
    flex-direction: column;
    gap: 5px;
  }

  .promo-wrapper {
    order: 2;
    width: auto;
    margin-left: auto;
    justify-content: flex-end;
    flex: 0 1 auto;
  }

  .hero {
    padding-top: 34px;
  }

  .hero-content p {
    font-size: 1rem;
  }

  .floating-images {
    min-height: 420px;
    max-width: 520px;
    margin-top: -320px;
  }

  .floating-images img {
    width: clamp(94px, 21vw, 144px);
  }

  .floating-images img:nth-child(1) { left: 31%; top: -52%; }
  .floating-images img:nth-child(2) { right: 11%; left: auto; top: -36%; }
  .floating-images img:nth-child(3) { right: 7%; left: auto; bottom: 82%; top: auto; }
  .floating-images img:nth-child(4) { left: 7%; bottom: 80%; top: auto; }
  .floating-images img:nth-child(5) { left: 14%; top: -38%; }

  .section,
  #specials,
  .main-footer {
    padding: 56px 16px;
  }

  .partners-title,
  .videos-title,
  .giveaways-title,
  .specials-title {
    gap: 12px;
    margin: 0 auto 34px;
    justify-content: center;
    align-items: center;
  }

  .partners-title h2,
  .videos-title h2,
  .giveaways-title h2,
  .specials-title h2 {
    font-size: 2.05rem;
    line-height: 1.25;
    text-align: center;
  }

  .partners-title-line,
  .title-line {
    max-width: 78px;
  }

  .partners-subtitle {
    margin: -4px auto 30px;
  }

  .promo-banner {
    min-height: 300px;
  }

  .main-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding: 30px 15px 50px;
  }

  .social-wrapper {
    order: 3;
    text-align: center;
  }

  .social-title {
    font-size: 15px;
  }

  #social-links-footer {
    justify-content: center;
    gap: 14px;
  }

  .disclaimer-text {
    order: 2;
    margin: 0 auto;
  }

  .age-warning {
    order: 1;
    position: static;
    max-width: 90%;
    text-align: center;
    margin: 0 auto;
  }
}

@media (max-width: 600px) {
  .main-header {
    min-height: 74px;
    padding: 8px 10px;
    gap: 6px;
  }

  .logo {
    height: 52px;
  }

  .hamburger {
    width: 28px;
    height: 20px;
    margin-left: 4px;
  }

  .hamburger span {
    height: 2.5px;
  }

  .hamburger.active span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }

  .hamburger.active span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }

  .main-nav {
    top: calc(100% + 8px);
    left: 8px;
    right: 8px;
    padding: 16px 14px;
    border-radius: 20px;
  }

  .main-nav a {
    min-height: 50px;
    font-size: 8px;
  }

  #promo-code {
    min-height: 34px;
    padding: 7px 10px;
    min-width: 104px;
    font-size: 7px;
    gap: 4px;
  }

  #promo-code img {
    width: 11px;
    height: 11px;
  }

  .hero {
    padding: 28px 14px 14px;
  }

  .hero-content {
    width: 100%;
    padding: 22px 14px 24px;
  }

  .character-img {
    width: min(100%, 230px);
    margin-top: 16px;
  }

  .hero-content p {
    font-size: 0.86rem;
    line-height: 1.9;
  }

  .hero-buttons {
    flex-direction: column;
    gap: 10px;
  }

  .btn,
  .hero-btn {
    width: 100%;
    font-size: 8px;
    min-width: 0;
  }

  #giveaways-button {
    border-radius: 18px 8px 18px 8px;
  }

  .floating-images {
    min-height: 370px;
    max-width: 430px;
    margin-top: -282px;
  }

  .floating-images img {
    width: 90px;
  }

  .floating-images img:nth-child(1) { left: 30%; top: -40%; }
  .floating-images img:nth-child(2) { right: 8%; left: auto; top: -24%; }
  .floating-images img:nth-child(3) { right: 5%; left: auto; bottom: 74%; top: auto; }
  .floating-images img:nth-child(4) { left: 5%; bottom: 73%; top: auto; display: block; }
  .floating-images img:nth-child(5) { left: 12%; top: -22%; display: block; }

  .partners-title h2,
  .videos-title h2,
  .giveaways-title h2,
  .specials-title h2 {
    font-size: 1.55rem;
    line-height: 1.2;
    text-align: center;
  }

  .partners-title-line,
  .title-line {
    max-width: 46px;
  }

  .partners-subtitle,
  .videos-subtitle,
  .giveaways-subtitle,
  .partner-description,
  .specials-subtitle,
  .banner-content p,
  .age-warning,
  .disclaimer-text {
    font-size: 7px;
  }

  .partner-card h3,
  .giveaway-title,
  .video-info h3,
  .glass-header h3 {
    font-size: 8px;
  }

  .code-block a,
  .cta-button,
  .event-ribbon,
  .countdown-chip,
  .banner-corner-ribbon,
  .video-date,
  .video-length,
  .active-tag,
  .inactive-tag,
  .price-tag,
  .social-title {
    font-size: 9px;
  }

  .active-tag,
  .inactive-tag {
    top: 10px;
    right: 12px;
  }

  .price-tag,
  .price-tag.active-price {
    top: 10px;
    right: 96px;
  }

  .price-tag.inactive-price {
    top: 10px;
    right: 124px;
  }

  .btn.enter-btn {
    width: 85%;
    min-width: 0;
    margin: 14px auto 0;
  }

  .giveaway-arrow {
    width: 34px;
    height: 34px;
    font-size: 14px;
  }

  .main-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding: 30px 15px 50px;
  }

  .footer-logo {
    max-width: 180px;
    margin: 0 auto 20px;
  }

  .social-icon {
    width: 48px;
    height: 48px;
  }

  .social-icon img {
    width: 31px;
    height: 31px;
  }

  .plekis {
    filter: blur(100px);
  }

  .social-wrapper {
    order: 3;
    text-align: center;
  }

  #social-links-footer {
    justify-content: center;
    gap: 14px;
  }

  .disclaimer-text {
    order: 2;
    font-size: 5.5px;
    padding: 0 10px;
    margin: 0 auto;
  }

  .age-warning {
    order: 1;
    position: static;
    max-width: 90%;
    font-size: 6.5px;
    text-align: center;
    margin: 0 auto;
  }
}

/* ===== Requested polish overrides ===== */
.main-nav {
  background: linear-gradient(180deg, rgba(22, 23, 29, 0.96), rgba(14, 15, 18, 0.94));
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.03),
    0 12px 22px rgba(0, 0, 0, 0.22);
}

.main-nav a {
  min-height: 46px;
  padding: 12px 18px;
  color: rgba(255, 255, 255, 0.9);
  transition: color 0.25s ease, background 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.main-nav .nav-soon {
  min-height: 46px;
  padding: 12px 16px;
}

.main-nav a.with-divider + a.with-divider::before {
  left: -4px;
  height: 14px;
  background: rgba(255, 255, 255, 0.12);
}

.main-nav a:hover,
.main-nav a:focus-visible,
.main-nav a.is-active,
.main-nav a[aria-current="page"] {
  color: #ffc961;
  background: linear-gradient(180deg, rgba(74, 54, 20, 0.76), rgba(39, 28, 10, 0.98));
  border-color: rgba(255, 190, 74, 0.34);
  box-shadow:
    inset 0 0 0 1px rgba(255, 220, 150, 0.04),
    0 0 18px rgba(255, 178, 44, 0.14);
}

body.is-loading .wrapper,
body:not(.is-loading) .wrapper {
  opacity: 1;
  filter: none;
  transform: none;
  transition: none;
}

.page-loader {
  background:
    radial-gradient(circle at 50% 24%, rgba(255, 178, 44, 0.16), transparent 24%),
    radial-gradient(circle at 50% 78%, rgba(255, 255, 255, 0.04), transparent 26%),
    rgba(4, 4, 6, 0.52);
  backdrop-filter: blur(30px) saturate(0.72);
  -webkit-backdrop-filter: blur(30px) saturate(0.72);
}

.page-loader::before {
  content: none;
}

.page-loader__panel {
  gap: 18px;
  width: min(100%, 560px);
  min-width: 0;
  min-height: 0;
  padding: 0 18px;
  border-radius: 0;
  background: none;
  border: 0;
  box-shadow: none;
  contain: none;
}

.page-loader__logo {
  width: 208px;
  height: 208px;
  border-radius: 0;
  filter:
    drop-shadow(0 0 20px rgba(255, 178, 44, 0.26))
    drop-shadow(0 18px 40px rgba(0, 0, 0, 0.34));
  animation: loaderFloat 1.8s ease-in-out infinite;
}

.page-loader__text {
  max-width: 100%;
  min-height: 18px;
  font-size: 12px;
  line-height: 1.7;
  letter-spacing: 0.04em;
  color: #ffcf73;
  text-shadow:
    0 0 12px rgba(255, 178, 44, 0.18),
    0 0 24px rgba(255, 178, 44, 0.08);
  white-space: nowrap;
}

.page-loader__bar {
  width: min(280px, 82vw);
  height: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 0 18px rgba(0, 0, 0, 0.22);
}

.page-loader__bar::before {
  content: none;
}

.page-loader__bar::after {
  content: none;
}

.page-loader__bar-fill {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  transform: scaleX(0.08);
  transform-origin: left center;
  background: linear-gradient(90deg, #ffcf60 0%, #ffaa12 55%, #ffcf60 100%);
  box-shadow:
    0 0 16px rgba(255, 178, 44, 0.34),
    0 0 28px rgba(255, 178, 44, 0.14);
  transition: transform 0.22s ease;
  overflow: hidden;
}

.page-loader__bar-fill::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 34%;
  background: linear-gradient(120deg, transparent 0%, rgba(255, 255, 255, 0.72) 50%, transparent 100%);
  animation: loaderFillShine 1s linear infinite;
}

.page-loader.is-finishing .page-loader__bar-fill {
  transition-duration: 0.26s;
}

.logo-link:hover .logo,
.logo-link:focus-visible .logo {
  transform: none;
  filter: none;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.24);
}

.logo-link.is-pressed .logo,
.logo-link:active .logo {
  transform: none;
  filter: none;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.24);
}

#promo-code {
  min-width: 178px;
  min-height: 40px;
  padding: 9px 15px 9px 13px;
  border-radius: 0;
  border: 1px solid rgba(255, 220, 150, 0.22);
  clip-path: polygon(0 12px, 12px 0, calc(100% - 14px) 0, 100% 14px, 100% calc(100% - 11px), calc(100% - 12px) 100%, 12px 100%, 0 calc(100% - 14px));
  background: linear-gradient(90deg, #ffdc8c 0%, #ffc14d 45%, #ffa312 100%);
  background-size: 200% 200%;
  box-shadow:
    0 0 12px rgba(255, 190, 60, 0.3),
    0 6px 18px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
  animation: goldGlow 5.6s ease-in-out infinite;
}

#promo-code span {
  letter-spacing: 0.08em;
}

#promo-code img {
  width: 14px;
  height: 14px;
  filter: brightness(0);
}

#promo-code:hover,
#promo-code:focus-visible {
  filter: brightness(1.04);
  box-shadow:
    0 0 16px rgba(255, 214, 0, 0.5),
    0 6px 18px rgba(0, 0, 0, 0.28),
    inset 0 0 8px rgba(255, 255, 255, 0.2);
}

@media (min-width: 861px) {
  .main-footer {
    min-height: 0;
    padding: 60px 20px 40px;
    padding-right: 20px;
    text-align: center;
  }

  .footer-logo {
    margin: 0 auto 5px;
  }

  .disclaimer-text {
    margin: 0 auto 20px;
    text-align: center;
    max-width: 700px;
  }

  .age-warning {
    position: absolute;
    top: 80px;
    right: 100px;
    margin: 0;
    max-width: 250px;
    text-align: left;
  }

  .social-wrapper {
    position: static;
    top: auto;
    right: auto;
    width: auto;
    margin-top: 4px;
    padding: 5px 0;
    text-align: left;
    border-radius: 0;
    background: none;
    border: 0;
    box-shadow: none;
    transform: translateY(-28px);
  }

  .social-title {
    display: block;
    margin-bottom: 14px;
    font-size: 14px;
    line-height: 1.8;
    font-style: italic;
    letter-spacing: normal;
    color: #ffffff;
    text-shadow: 1px 1px 0 #000000, 2px 2px 0 #555555;
    background: none;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    filter: none;
  }

  #social-links-footer {
    justify-content: flex-start;
    gap: 12px;
  }
}

@media (min-width: 1180px) {
  #bonuses .partners-grid {
    grid-template-columns: repeat(3, minmax(286px, 332px));
    justify-content: center;
    gap: 30px;
    max-width: 1120px;
    margin: 0 auto;
    align-items: stretch;
  }

  #bonuses .partner-card {
    min-height: 372px;
    width: 100%;
    max-width: none;
    padding: 84px 20px 20px;
  }

  #bonuses .partner-card h3 {
    min-height: 72px;
    padding: 16px 14px;
  }

  #bonuses .partner-trophy {
    top: 16px;
    right: 16px;
  }

  #bonuses .logo-wrapper {
    min-height: 110px;
    padding: 13px;
  }

  #bonuses .partner-logo {
    width: 186px;
    height: 80px;
  }

  #bonuses .hellcase-effect .partner-logo,
  #bonuses .clash-effect .partner-logo {
    width: 202px;
    height: 86px;
  }

  #bonuses .partner-description {
    margin-top: 16px;
    min-height: 5.6em;
    font-size: 10px;
    line-height: 2;
  }

  #bonuses .code-block a {
    min-height: 48px;
    padding: 11px 18px;
    font-size: 8px;
  }
}

@media (max-width: 860px) {
  .main-nav .nav-soon {
    width: 100%;
    min-height: 50px;
    flex-direction: column;
    gap: 5px;
    text-align: center;
  }

  #promo-code {
    min-width: 120px;
    min-height: 33px;
    padding: 6px 10px 6px 9px;
    font-size: 6px;
    gap: 4px;
    clip-path: polygon(0 9px, 9px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 8px), calc(100% - 9px) 100%, 9px 100%, 0 calc(100% - 10px));
  }

  #promo-code img {
    width: 10px;
    height: 10px;
  }

  .nav-soon__tag {
    font-size: 5px;
  }

  .page-loader {
    backdrop-filter: blur(24px) saturate(0.74);
    -webkit-backdrop-filter: blur(24px) saturate(0.74);
  }

  .page-loader__logo {
    width: 156px;
    height: 156px;
  }

  .page-loader__text {
    font-size: 9px;
    white-space: normal;
  }

  .page-loader__bar {
    width: min(220px, 84vw);
  }
}

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

  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
}

/* =========================
   FOOTER LAYOUT OVERRIDE
   ========================= */
.main-footer {
  position: relative;
  width: min(1320px, calc(100% - 24px));
  margin: 36px auto 0;
  padding: 28px;
  background:
    linear-gradient(180deg, rgba(20, 20, 24, 0.98), rgba(10, 10, 12, 0.98)),
    radial-gradient(circle at top right, rgba(255, 178, 44, 0.12), transparent 34%);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 30px 30px 0 0;
  box-shadow:
    0 -1px 0 rgba(255, 255, 255, 0.04) inset,
    0 -12px 40px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.main-footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 28px;
  right: 28px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 191, 0, 0.7), transparent);
}

.footer-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.8fr);
  gap: 28px;
  align-items: stretch;
}

.footer-brand,
.footer-side {
  position: relative;
  min-height: 100%;
  padding: 22px 24px;
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02)),
    linear-gradient(180deg, rgba(17, 17, 20, 0.96), rgba(10, 10, 12, 0.96));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.footer-brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}

.footer-side {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 18px;
}

.footer-kicker {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  padding: 7px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255, 191, 0, 0.18);
  background: rgba(255, 191, 0, 0.08);
  color: #ffd36c;
  font-size: 7px;
  line-height: 1.5;
  letter-spacing: 0.12em;
}

.footer-logo-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  text-decoration: none;
  border-radius: 22px;
  -webkit-tap-highlight-color: transparent;
}

.footer-logo {
  max-width: 220px;
  margin: 0;
  filter: drop-shadow(0 16px 24px rgba(0, 0, 0, 0.26));
}

.footer-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
  margin-bottom: 18px;
}

.footer-nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02)),
    linear-gradient(180deg, rgba(18, 18, 22, 0.95), rgba(10, 10, 12, 0.95));
  color: #f6f0de;
  font-size: 7px;
  line-height: 1.5;
  text-decoration: none;
  transition: border-color 0.22s ease, background 0.22s ease, color 0.22s ease, box-shadow 0.22s ease;
}

.footer-nav-link:hover,
.footer-nav-link:focus-visible {
  color: #ffe39d;
  border-color: rgba(255, 191, 0, 0.26);
  background:
    linear-gradient(180deg, rgba(255, 191, 0, 0.12), rgba(255, 191, 0, 0.05)),
    linear-gradient(180deg, rgba(22, 22, 26, 0.98), rgba(10, 10, 12, 0.98));
  box-shadow: 0 0 20px rgba(255, 191, 0, 0.08);
}

.footer-nav-soon {
  flex-direction: column;
  gap: 4px;
  text-align: center;
  color: rgba(255, 255, 255, 0.72);
  pointer-events: none;
}

.footer-nav-soon .nav-soon__tag {
  font-size: 5px;
}

.footer-glass-copy {
  position: relative;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 12px 24px rgba(0, 0, 0, 0.16);
}

.disclaimer-text {
  max-width: 700px;
  margin: 0;
  color: rgba(255, 255, 255, 0.74);
  font-size: 7px;
  line-height: 1.9;
  text-align: left;
}

.social-wrapper {
  order: 1;
  margin-top: 0;
  padding: 0;
  text-align: left;
  transform: none;
}

.social-title {
  display: inline-block;
  margin-bottom: 14px;
  padding: 0;
  font-size: 13px;
  line-height: 1.6;
  font-style: italic;
  letter-spacing: 0.08em;
  color: transparent;
  background: linear-gradient(90deg, #fff6d5 0%, #ffd46a 38%, #ffbf00 68%, #f39a00 100%);
  -webkit-background-clip: text;
  background-clip: text;
  transition: filter 0.22s ease, text-shadow 0.22s ease, background 0.22s ease;
  text-shadow:
    0 0 14px rgba(255, 191, 0, 0.18),
    0 1px 0 rgba(0, 0, 0, 0.34);
}

#social-links-footer {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 14px;
}

.social-icon {
  width: 54px;
  height: 54px;
  border-radius: 16px;
  border: 1px solid rgba(255, 214, 122, 0.14);
  background:
    radial-gradient(circle at 26% 20%, rgba(255, 243, 199, 0.22), transparent 42%),
    linear-gradient(145deg, #ffd86f 0%, #ffbf00 35%, #cf8900 72%, #8a5a00 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 10px 22px rgba(0, 0, 0, 0.24),
    0 0 0 1px rgba(89, 58, 0, 0.16);
  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.social-icon::after {
  display: none;
}

.social-icon:hover,
.social-icon:focus-visible {
  background:
    radial-gradient(circle at 26% 20%, rgba(255, 248, 220, 0.18), transparent 42%),
    linear-gradient(145deg, #f0c142 0%, #c68c00 42%, #936300 74%, #6b4500 100%);
  border-color: rgba(255, 214, 122, 0.24);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 12px 28px rgba(0, 0, 0, 0.28),
    0 0 18px rgba(255, 191, 0, 0.14);
}

.age-warning {
  order: 2;
  position: static;
  margin: 0;
  max-width: none;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.06);
  font-size: 7px;
  line-height: 1.7;
  text-align: left;
  color: rgba(255, 255, 255, 0.86);
}

@media (max-width: 860px) {
  .main-footer {
    width: min(1320px, calc(100% - 14px));
    margin-top: 28px;
    padding: 16px;
    border-radius: 24px 24px 0 0;
  }

  .main-footer::before {
    left: 16px;
    right: 16px;
  }

  .footer-shell {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .footer-brand,
  .footer-side {
    padding: 18px;
  }

  .footer-side {
    display: flex;
    flex-direction: column;
  }

  .footer-brand {
    align-items: center;
    text-align: center;
  }

  .footer-kicker {
    margin-bottom: 14px;
  }

  .footer-logo {
    max-width: 180px;
    margin: 0;
  }

  .footer-logo-link {
    margin-bottom: 16px;
  }

  .disclaimer-text,
  .age-warning {
    text-align: center;
  }

  .social-title {
    display: block;
    text-align: left;
  }

  .footer-nav {
    justify-content: center;
  }

  .social-wrapper {
    width: 100%;
    text-align: left;
  }

  #social-links-footer {
    justify-content: flex-start;
  }
}
