/* Hero Section Responsive Content - Force proper mobile/desktop separation */
/* This file is loaded after Tailwind to ensure proper override */
section.bg-slate-50 .hero-mobile-heading,
section.bg-slate-50 .hero-mobile-description {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

section.bg-slate-50 .hero-desktop-heading,
section.bg-slate-50 .hero-desktop-description {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media (min-width: 768px) {
  section.bg-slate-50 .hero-mobile-heading,
  section.bg-slate-50 .hero-mobile-description {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  
  section.bg-slate-50 .hero-desktop-heading,
  section.bg-slate-50 .hero-desktop-description {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    overflow: visible !important;
  }
}

/* Expand legacy max-width containers to use the full viewport width with soft padding */
:root :where(.max-w-6xl, .max-w-7xl, .wide-container) {
  max-width: min(100%, 1440px);
  width: 100%;
  padding-left: clamp(0.75rem, 3vw, 2.5rem);
  padding-right: clamp(0.75rem, 3vw, 2.5rem);
  box-sizing: border-box;
}

@media (min-width: 1280px) {
  :root :where(.max-w-6xl, .max-w-7xl, .wide-container) {
    max-width: min(100%, 1600px);
    padding-left: clamp(1.5rem, 4vw, 3.5rem);
    padding-right: clamp(1.5rem, 4vw, 3.5rem);
  }
}

/* Competition show responsive rows */
.mobile-scroll-row {
  display: flex;
  gap: 0.75rem;
  overflow-x: auto;
  padding-bottom: 0.5rem;
  scroll-snap-type: x proximity;
}

.mobile-scroll-row::-webkit-scrollbar {
  display: none;
}

.mobile-scroll-item {
  flex: 0 0 auto;
  min-width: 170px;
  scroll-snap-align: start;
}

.mobile-scroll-item--auto {
  min-width: auto;
}

@media (min-width: 640px) {
  .mobile-scroll-row {
    overflow: visible;
    padding-bottom: 0;
    gap: 1rem;
    scroll-snap-type: none;
  }

  .mobile-scroll-row .mobile-scroll-item {
    flex: 1 1 auto;
    min-width: 0;
  }

  .mobile-scroll-row.mobile-scroll--stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mobile-scroll-row.mobile-scroll--prizes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .mobile-scroll-row.mobile-scroll--dates {
    display: flex;
    justify-content: space-between;
  }

  .mobile-scroll-row.mobile-scroll--winners {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  }
}

/* Competition content shell */
.competition-shell,
.topup-shell {
  width: 100%;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 1024px) {
  .competition-shell,
  .topup-shell {
    max-width: 1180px;
    padding-left: clamp(1.5rem, 3vw, 3rem);
    padding-right: clamp(1.5rem, 3vw, 3rem);
  }
}

@media (min-width: 1440px) {
  .competition-shell,
  .topup-shell {
    max-width: 1400px;
  }
}

