:root{
  --neon-cream:#f4ecd8;
  --neon-cream-deep:#ecdfc1;
  --neon-ivory:#fffaeb;
  --neon-red:#dc2828;
  --neon-red-deep:#b91c1c;
  --neon-blue:#1e40af;
  --neon-blue-deep:#2c4d93;
  --neon-yellow:#facc15;
  --neon-yellow-deep:#f59e0b;
  --neon-ink:#000000;
  --neon-charcoal:#333333;
  --neon-border:2px solid var(--neon-ink);
  --neon-shell:min(1120px,calc(100% - 2rem));
}

*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:clip;max-width:100%}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Inter Tight",sans-serif;
  color:var(--neon-ink);
  background:linear-gradient(180deg,var(--neon-cream) 0%,var(--neon-cream-deep) 100%);
  line-height:1.6;
}

img{display:block;max-width:100%;height:auto}
a{color:inherit}
button{font:inherit}

.neon-shell{
  width:var(--neon-shell);
  margin:0 auto;
}

.neon-page{
  position:relative;
  z-index:2;
}

.neon-shape{
  position:fixed;
  pointer-events:none;
  opacity:.9;
  z-index:0;
}

.neon-shape-one{
  top:-6rem;
  right:-5rem;
  width:18rem;
  height:18rem;
  border-radius:50%;
  background:var(--neon-red);
}

.neon-shape-two{
  top:2.5rem;
  left:-2rem;
  width:7rem;
  height:7rem;
  background:var(--neon-yellow);
}

.neon-shape-three{
  left:-1px;
  bottom:-1px;
  width:0;
  height:0;
  border-left:0 solid transparent;
  border-right:14rem solid transparent;
  border-bottom:14rem solid var(--neon-blue);
}

.neon-progress{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background:transparent;
  z-index:260;
}

.neon-progress-bar{
  display:block;
  width:0;
  height:100%;
  background:var(--neon-red);
}

.neon-header{
  position:sticky;
  top:0;
  z-index:200;
  background:rgba(244,236,216,.96);
  border-bottom:4px solid var(--neon-ink);
  transition:background-color .2s ease;
}

.neon-header.neon-scrolled{
  background:rgba(255,250,235,.98);
}

.neon-header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  min-height:86px;
}

.neon-brand{
  display:inline-flex;
  align-items:center;
  gap:.85rem;
  text-decoration:none;
}

.neon-brand img{
  width:min(300px,52vw);
}

.neon-brand-mark{
  position:relative;
  width:34px;
  height:34px;
  flex:0 0 34px;
}

.neon-brand-red,.neon-brand-blue,.neon-brand-yellow{
  position:absolute;
  display:block;
}

.neon-brand-red{
  top:0;
  left:0;
  width:14px;
  height:14px;
  border-radius:50%;
  background:var(--neon-red);
}

.neon-brand-blue{
  top:10px;
  left:10px;
  width:14px;
  height:14px;
  background:var(--neon-blue);
}

.neon-brand-yellow{
  right:0;
  bottom:0;
  width:0;
  height:0;
  border-left:7px solid transparent;
  border-right:7px solid transparent;
  border-bottom:14px solid var(--neon-yellow);
}

.neon-nav{
  display:flex;
  align-items:center;
  gap:.25rem;
}

.neon-nav a{
  font-family:"Archivo Black",sans-serif;
  font-size:.86rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  text-decoration:none;
  padding:.7rem .8rem;
}

.neon-nav a:nth-child(3n+1):hover,
.neon-nav a:nth-child(3n+1):focus-visible{background:var(--neon-red);color:var(--neon-ivory)}
.neon-nav a:nth-child(3n+2):hover,
.neon-nav a:nth-child(3n+2):focus-visible{background:var(--neon-blue);color:var(--neon-ivory)}
.neon-nav a:nth-child(3n):hover,
.neon-nav a:nth-child(3n):focus-visible{background:var(--neon-yellow)}

.neon-burger{
  display:none;
  align-items:center;
  gap:.3rem;
  flex-direction:column;
  justify-content:center;
  width:58px;
  height:58px;
  border:var(--neon-border);
  background:var(--neon-ivory);
  cursor:pointer;
}

.neon-burger span{
  width:24px;
  height:3px;
  background:var(--neon-ink);
}

.neon-burger .neon-burger-text{
  width:auto;
  height:auto;
  background:transparent;
  font-family:"Archivo Black",sans-serif;
  font-size:.65rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.neon-nav-backdrop{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.45);
  z-index:140;
  opacity:0;
  visibility:hidden;
  transition:opacity .2s ease,visibility .2s ease;
}

body.neon-nav-open .neon-nav-backdrop{
  opacity:1;
  visibility:visible;
}

.neon-cookie-banner{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:250;
  background:var(--neon-ink);
  color:var(--neon-ivory);
  border-bottom:4px solid var(--neon-yellow);
}

.neon-cookie-inner{
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.8rem 0;
}

.neon-cookie-inner p{
  margin:0;
  max-width:58rem;
}

.neon-cookie-actions,.neon-age-actions{
  display:flex;
  gap:.75rem;
  flex-wrap:wrap;
}

.neon-button,.neon-cta-btn{
  display:inline-block;
  padding:.95rem 1.2rem;
  border:none;
  background:var(--neon-ink);
  color:var(--neon-ivory);
  text-decoration:none;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-family:"Archivo Black",sans-serif;
  cursor:pointer;
}

.neon-button:hover,.neon-button:focus-visible,.neon-cta-btn:hover,.neon-cta-btn:focus-visible{
  background:var(--neon-red);
  color:var(--neon-ivory);
}

.neon-button-alt{
  background:var(--neon-ivory);
  color:var(--neon-ink);
  outline:var(--neon-border);
  outline-offset:-2px;
}

.neon-button-link{
  background:var(--neon-yellow);
  color:var(--neon-ink);
}

.neon-kicker{
  margin:0 0 .85rem;
  font-family:"Archivo Black",sans-serif;
  font-size:.8rem;
  letter-spacing:.22em;
  text-transform:uppercase;
}

.neon-rg,
.neon-hero,
.neon-picks,
.neon-methodology,
.neon-about,
.neon-faq,
.neon-article-hero,
.neon-article-section{
  padding:5rem 0;
}

.neon-rg-grid,.neon-grid,.neon-spotlight-grid,.neon-casino-list,.neon-stat-grid{
  display:grid;
  gap:1.5rem;
}

.neon-rg-grid,
.neon-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.neon-rg-title,
.neon-hero h1,
.neon-picks h2,
.neon-methodology h2,
.neon-about h2,
.neon-faq h2,
.neon-article-hero h1,
.neon-content-block h3,
.neon-spotlight h4,
.neon-card h3{
  margin:0;
  font-family:"Archivo Black",sans-serif;
  line-height:1.05;
}

.neon-rg-title,.neon-hero h1,.neon-article-hero h1{
  font-size:clamp(2.4rem,6vw,4.6rem);
}

.neon-picks h2,.neon-methodology h2,.neon-about h2,.neon-faq h2{
  font-size:clamp(1.9rem,4vw,3.1rem);
}

.neon-section-copy,.neon-hero-copy,.neon-rg-copy p,.neon-article-hero p{
  margin:.9rem 0 0;
  font-size:1.05rem;
  color:var(--neon-charcoal);
  max-width:58rem;
}

.neon-inline-badge{
  display:inline-block;
  padding:.12rem .5rem;
  background:var(--neon-yellow);
  border:1px solid var(--neon-ink);
  font-family:"Archivo Black",sans-serif;
}

.neon-hero{
  padding-top:2.5rem;
}

.neon-counter-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin:2rem 0 1.75rem;
}

.neon-counter{
  padding:1.2rem;
  border:var(--neon-border);
  background:var(--neon-ivory);
  opacity:0;
}

.neon-counter-row.neon-visible .neon-counter{
  animation:neon-rise .5s ease forwards;
}

.neon-counter-row.neon-visible .neon-counter:nth-child(2){animation-delay:.08s}
.neon-counter-row.neon-visible .neon-counter:nth-child(3){animation-delay:.16s}

@keyframes neon-rise{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}

.neon-counter-value{
  display:block;
  font-family:"Archivo Black",sans-serif;
  font-size:clamp(2.3rem,5vw,4rem);
  color:var(--neon-red);
}

.neon-counter:nth-child(2) .neon-counter-value{color:var(--neon-blue)}
.neon-counter:nth-child(3) .neon-counter-value{color:var(--neon-yellow-deep)}

.neon-counter-label{
  display:block;
  margin-top:.35rem;
  font-family:"Archivo Black",sans-serif;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.neon-casino-list{
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin-top:2rem;
}

.neon-card,
.neon-content-block,
.neon-stat-box,
.neon-spotlight,
.neon-table,
.neon-article-section .neon-long-copy,
.neon-score-wrap{
  background:var(--neon-ivory);
}

.neon-card,
.neon-content-block,
.neon-stat-box,
.neon-spotlight,
.neon-score-wrap,
.neon-article-section .neon-long-copy{
  border:var(--neon-border);
}

.neon-card{
  position:relative;
  overflow:hidden;
  padding:2.2rem 1.4rem 1.4rem;
  display:flex;
  flex-direction:column;
  min-width:0;
}

.neon-card:hover{
  transform:translateY(-4px);
}

.neon-strip{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:8px;
  background:var(--neon-red);
}

.neon-card:nth-child(2) .neon-strip{background:var(--neon-blue)}
.neon-card:nth-child(3n) .neon-strip{background:var(--neon-yellow)}

.neon-rank{
  position:absolute;
  top:-1.8rem;
  left:.65rem;
  font-family:"Archivo Black",sans-serif;
  font-size:96px;
  line-height:1;
  color:var(--neon-red);
  opacity:.95;
  transform:rotate(-5deg);
}

.neon-card:nth-child(2) .neon-rank{
  color:var(--neon-blue);
  transform:rotate(5deg);
}

.neon-card-badge{
  display:inline-block;
  align-self:flex-end;
  margin-bottom:1.5rem;
  padding:.25rem .6rem;
  border:1px solid var(--neon-ink);
  background:var(--neon-yellow);
  font-family:"Archivo Black",sans-serif;
  font-size:.78rem;
}

.neon-logo-wrap{
  width:min(260px,100%);
  min-height:120px;
  margin:0 auto .9rem;
  display:flex;
  align-items:center;
  justify-content:center;
}

.neon-card h3{
  font-size:1.8rem;
  text-align:center;
}

.neon-rating{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.45rem;
  flex-wrap:wrap;
  margin:.8rem 0;
}

.neon-dot{
  width:16px;
  height:16px;
  border-radius:50%;
  border:2px solid var(--neon-ink);
  background:transparent;
}

.neon-dot-fill{background:var(--neon-ink)}
.neon-dot-half{background:linear-gradient(90deg,var(--neon-ink) 50%,transparent 50%)}

.neon-bonus-text{
  margin:.3rem 0 1rem;
  text-align:center;
  font-family:"Archivo Black",sans-serif;
  font-size:1.25rem;
}

.neon-feature-list{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  justify-content:center;
  list-style:none;
  padding:0;
  margin:0 0 1rem;
}

.neon-feature-list li{
  padding:.5rem .7rem;
  border:1px solid var(--neon-ink);
  font-family:"Archivo Black",sans-serif;
  font-size:.78rem;
  text-transform:uppercase;
}

.neon-card:nth-child(1) .neon-feature-list li:nth-child(3n+1){background:var(--neon-yellow)}
.neon-card:nth-child(1) .neon-feature-list li:nth-child(3n+2){background:#ffd7d7}
.neon-card:nth-child(1) .neon-feature-list li:nth-child(3n+3){background:#d8e3ff}
.neon-card:nth-child(2) .neon-feature-list li:nth-child(3n+1){background:#d8e3ff}
.neon-card:nth-child(2) .neon-feature-list li:nth-child(3n+2){background:var(--neon-yellow)}
.neon-card:nth-child(2) .neon-feature-list li:nth-child(3n+3){background:#ffd7d7}

.neon-form-badge{
  display:inline-flex;
  gap:.4rem;
  align-items:center;
  align-self:flex-start;
  margin:0 0 1rem;
  padding:.35rem .55rem;
  background:var(--neon-ink);
  color:var(--neon-ivory);
  font-family:"Archivo Black",sans-serif;
  font-size:11px;
  letter-spacing:.08em;
}

.neon-cta-btn{
  width:100%;
  margin-top:auto;
}

.neon-disclaimer{
  margin:.9rem 0 0;
  font-size:.88rem;
  color:var(--neon-charcoal);
}

.neon-content-block{
  margin-top:2rem;
  padding:1.5rem;
}

.neon-table-wrap{
  overflow-x:auto;
  width:100%;
  max-width:100%;
}

.neon-table{
  width:100%;
  border-collapse:collapse;
  border:var(--neon-border);
  min-width:0;
}

.neon-table th,.neon-table td{
  border:var(--neon-border);
  padding:.9rem;
  text-align:left;
  vertical-align:top;
}

.neon-table th{
  font-family:"Archivo Black",sans-serif;
  text-transform:uppercase;
  letter-spacing:.08em;
  background:var(--neon-yellow);
}

.neon-sort{
  border:none;
  background:transparent;
  padding:0;
  font:inherit;
  text-transform:inherit;
  letter-spacing:inherit;
  cursor:pointer;
}

.neon-spotlight-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.neon-spotlight{
  padding:1.5rem;
}

.neon-spotlight-red{background:#ffe5e5}
.neon-spotlight-blue{background:#dfe7ff}

.neon-spotlight h4{
  font-size:1.7rem;
  margin-bottom:.7rem;
}

.neon-score-wrap{
  padding:1.2rem;
}

.neon-score-table th{
  width:70%;
}

.neon-stat-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin:1.8rem 0;
}

.neon-stat-box{
  padding:1.3rem;
  text-align:center;
}

.neon-stat-box strong{
  display:block;
  font-family:"Archivo Black",sans-serif;
  font-size:3rem;
}

.neon-stat-box:nth-child(1) strong{color:var(--neon-red)}
.neon-stat-box:nth-child(2) strong{color:var(--neon-blue)}
.neon-stat-box:nth-child(3) strong{color:var(--neon-yellow-deep)}

.neon-long-copy{
  padding:1.5rem;
}

.neon-long-copy h2{
  font-size:clamp(1.35rem,3vw,2rem);
  margin:1.8rem 0 .5rem;
}

.neon-long-copy h2:first-child{margin-top:0}
.neon-long-copy p{margin:.6rem 0}

.neon-faq-list{
  display:grid;
  gap:1rem;
  margin-top:2rem;
}

.neon-faq-item{
  border:var(--neon-border);
  background:var(--neon-ivory);
}

.neon-faq-toggle{
  width:100%;
  border:none;
  background:transparent;
  text-align:left;
  padding:1rem 1.15rem;
  font-family:"Archivo Black",sans-serif;
  font-size:1rem;
  cursor:pointer;
}

.neon-faq-panel{
  max-height:0;
  overflow:hidden;
  transition:max-height .22s ease;
}

.neon-faq-item.neon-open .neon-faq-panel{
  border-top:var(--neon-border);
}

.neon-faq-panel p{
  margin:0;
  padding:1rem 1.15rem 1.2rem;
}

.neon-footer{
  position:relative;
  z-index:2;
  border-top:4px solid var(--neon-ink);
  background:var(--neon-ivory);
}

.neon-footer-row{
  border-top:var(--neon-border);
  padding:1rem 0;
}

.neon-footer-row:first-child{border-top:none}

.neon-footer-links{
  display:flex;
  flex-wrap:wrap;
  gap:1rem;
}

.neon-footer a{
  font-family:"Archivo Black",sans-serif;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.neon-footer a:hover,.neon-footer a:focus-visible{color:var(--neon-red)}

.neon-age-box h2{
  margin:.2rem 0 .8rem;
  font-family:"Archivo Black",sans-serif;
  font-size:2rem;
}

.neon-age-box p{
  margin:.6rem 0 1rem;
}

.neon-inner-page .neon-article-hero{
  padding-bottom:2rem;
}

.neon-inner-page .neon-article-section{
  padding-top:0;
}

@media (max-width: 980px){
  .neon-burger{display:flex}
  .neon-nav{
    position:fixed;
    top:0;
    right:0;
    height:100dvh;
    width:min(360px,86vw);
    padding:6.5rem 1rem 1.5rem;
    background:var(--neon-ivory);
    border-left:4px solid var(--neon-ink);
    flex-direction:column;
    align-items:flex-start;
    z-index:150;
    transform:translateX(100%);
    transition:transform .2s ease;
  }
  body.neon-nav-open .neon-nav{transform:translateX(0)}
  .neon-nav a{width:100%}
  .neon-cookie-inner,
  .neon-rg-grid,
  .neon-grid,
  .neon-spotlight-grid,
  .neon-stat-grid,
  .neon-counter-row{grid-template-columns:1fr}
}

@media(max-width:700px){
  h1{font-size:clamp(1.6rem,5vw,2.4rem)!important}
  h2{font-size:clamp(1.2rem,4vw,1.8rem)!important}
  h3{font-size:clamp(1rem,3.5vw,1.3rem)!important}
  .neon-bonus-text,[class*="neon-bonus"]{font-size:clamp(0.95rem,2.5vw,1.15rem)!important}
  .neon-hero h1{font-size:clamp(1.8rem,6vw,2.8rem)!important}
  .neon-card{padding:16px!important}
}
@media(max-width:550px){
  html,body{overflow-x:clip;max-width:100%}
  .neon-page *{max-width:100%}
  .neon-casino-list,.neon-grid{grid-template-columns:1fr!important;min-width:0}
  .neon-casino-list>*,.neon-grid>*{min-width:0}
  .neon-card{flex-direction:column!important;min-width:0;padding:12px!important}
  .neon-card *{min-width:0;max-width:100%}
  .neon-logo-wrap{width:min(200px,85%);min-height:56px;margin:0 auto 8px}
  .neon-cta-btn,.neon-button,.neon-age-box button,.neon-age-box a,.neon-cookie-actions button,.neon-cookie-actions a{width:100%!important;max-width:100%;white-space:normal;word-break:break-word;overflow-wrap:anywhere;display:block}
  .neon-cookie-actions{display:flex!important;flex-direction:column!important;gap:10px!important;align-items:stretch!important}
  h1{font-size:clamp(1.25rem,6vw,2rem)!important}
  h2{font-size:clamp(1.1rem,5vw,1.6rem)!important}
  h3{font-size:clamp(0.95rem,4vw,1.2rem)!important}
  .neon-card:hover{transform:none!important}
  table{table-layout:auto;width:100%;min-width:0}
  .neon-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;max-width:100%}
  .neon-table-wrap table{min-width:max-content;width:max-content}
  thead th{white-space:nowrap}
  .neon-nav{max-width:min(320px,85vw)!important}
  .neon-nav-backdrop{max-width:unset!important;width:100vw!important}
  .neon-header-inner{display:flex!important;flex-wrap:nowrap!important;justify-content:space-between!important;align-items:center!important;gap:0 8px!important}
  .neon-burger{flex-shrink:0!important}
}
@media(max-width:380px){
  h1{font-size:clamp(1.1rem,7vw,1.5rem)!important}
  h3{font-size:clamp(0.9rem,4vw,1.1rem)!important}
  .neon-card{padding:10px!important}
}
