:root{
  --bg:#0c0614;--bg2:#140a22;--panel:#120a1e;--line:rgba(196,140,255,.22);
  --text:#ece6f7;--muted:#a79bbd;--pink:#ff4fd8;--violet:#9b5cff;--blue:#53b7ff;
  --grad:linear-gradient(90deg,#ff4fd8,#9b5cff 55%,#53b7ff);
  --cut:18px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font:400 16px/1.65 Inter,system-ui,sans-serif;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:#e7a8ff;text-decoration:none}a:hover{color:#fff}
h1,h2,h3,h4,.logo,.btn,.score strong,.stats strong,.num,.faq-n{font-family:"Chakra Petch",sans-serif;letter-spacing:.02em}
.wrap{width:min(1160px,100% - 32px);margin-inline:auto}
.narrow{width:min(860px,100% - 32px)}
.muted{color:var(--muted)}.small{font-size:.9rem}.tiny{font-size:.78rem;color:var(--muted);margin-top:10px}.center{text-align:center;margin-top:24px}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* top bar + header */
.topbar{background:linear-gradient(90deg,#3a0f5c,#6b1a7a,#3a0f5c);overflow:hidden;font:600 .72rem "Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.14em;color:#ffd6f6}
.marquee{display:flex;width:max-content;animation:mq 40s linear infinite;padding:6px 0}
.marquee span{white-space:nowrap}
@keyframes mq{to{transform:translateX(-50%)}}
.header{position:sticky;top:0;z-index:50;background:rgba(12,6,20,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.header-in{display:flex;align-items:center;justify-content:space-between;height:66px;gap:20px}
.logo{font-size:1.45rem;font-weight:700;font-style:italic;color:#fff;text-shadow:0 0 18px rgba(255,79,216,.55)}
.nav{display:flex;gap:26px}
.nav a{color:var(--muted);font:600 .85rem "Chakra Petch",sans-serif;text-transform:uppercase;letter-spacing:.12em}
.nav a.on,.nav a:hover{color:#fff;text-shadow:0 0 12px var(--pink)}
.header-right{display:flex;align-items:center;gap:12px}
.age{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;border:2px solid #ff4f6d;color:#fff;font:700 .8rem "Chakra Petch",sans-serif;box-shadow:0 0 12px rgba(255,79,109,.5)}
.age-lg{width:48px;height:48px;font-size:1rem;margin-top:14px}
.menu-btn{display:none;background:transparent;border:1px solid var(--line);color:#fff;padding:7px 14px;font:600 .75rem "Chakra Petch",sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}

/* buttons */
.btn{display:inline-block;background:var(--grad);color:#fff;border:0;padding:12px 26px;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);box-shadow:0 0 22px rgba(255,79,216,.35);transition:filter .2s,transform .2s}
.btn:hover{filter:brightness(1.15);color:#fff;transform:translateY(-1px)}
.btn-ghost{background:transparent;border:1px solid var(--line);box-shadow:none}
.btn.block{display:block;text-align:center;margin-top:14px}
.link{font:600 .85rem "Chakra Petch",sans-serif;letter-spacing:.06em}

/* hero (synthwave scene, no big text) */
.hero{position:relative;min-height:520px;display:grid;align-items:center;overflow:hidden;border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#1a0630 0%,#3b0d5e 40%,#8a1f8f 62%,#2a0838 63%,#0c0614 100%)}
.scene{position:absolute;inset:0}
.sun{position:absolute;left:50%;top:22%;width:300px;height:300px;transform:translateX(-50%);border-radius:50%;
  background:linear-gradient(180deg,#ffd36b 0%,#ff7ab8 45%,#c03bff 100%);
  -webkit-mask:repeating-linear-gradient(180deg,#000 0 18px,transparent 18px 24px);mask:repeating-linear-gradient(180deg,#000 0 18px,transparent 18px 24px);
  filter:drop-shadow(0 0 40px rgba(255,90,200,.7));opacity:.85}
.grid-floor{position:absolute;left:-50%;right:-50%;bottom:-10%;height:52%;transform:perspective(380px) rotateX(62deg);transform-origin:top;
  background:linear-gradient(transparent 0 94%,rgba(255,79,216,.75) 94%) 0 0/100% 40px,linear-gradient(90deg,transparent 0 96%,rgba(155,92,255,.75) 96%) 0 0/50px 100%;
  animation:floor 3s linear infinite;-webkit-mask:linear-gradient(transparent,#000 30%);mask:linear-gradient(transparent,#000 30%)}
@keyframes floor{to{background-position:0 40px,0 0}}
.hero-in{position:relative;text-align:center;padding:90px 0 70px}
.script{display:block;font:italic 500 1.1rem Georgia,serif;color:#ffb8ef;margin-bottom:6px;text-shadow:0 0 10px var(--pink)}
.hero h1{font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:700;text-shadow:0 0 24px rgba(0,0,0,.6)}
.hero p{max-width:440px;margin:10px auto 24px;color:#eadff7;font-size:.98rem}
.hero p.aff-disclosure{max-width:620px;margin:26px auto 0;padding:10px 16px;font-size:.82rem;line-height:1.5;background:rgba(10,4,24,.72);border:1px solid var(--line)}
.aff-disclosure a{color:#ffb8ef;text-decoration:underline}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:44px 0;border-bottom:1px solid var(--line)}
.stats div{border-left:1px solid var(--line);padding-left:16px}
.stats strong{display:block;font-size:1.7rem}
.stats span{color:var(--muted);font-size:.82rem}

/* sections */
.section{padding:84px 0;position:relative}
.panel{background:radial-gradient(ellipse at 50% 0,rgba(155,92,255,.18),transparent 60%),var(--panel);border-block:1px solid var(--line)}
.sec-head{text-align:center;margin-bottom:46px}
.sec-head h2{font-size:clamp(1.5rem,3vw,2.1rem);font-weight:600}
.sec-head h2::before{content:"";display:block;width:34px;height:3px;background:var(--grad);margin:0 auto 16px}
.sec-head p{color:var(--muted);font-size:.92rem;margin-top:6px}

/* chamfered cards */
.chamfer{position:relative;padding:30px 26px;background:linear-gradient(160deg,rgba(155,92,255,.12),rgba(12,6,20,.6));
  clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut))}
.chamfer::before{content:"";position:absolute;inset:0;padding:1px;background:linear-gradient(160deg,rgba(255,79,216,.6),rgba(155,92,255,.25),rgba(83,183,255,.5));
  clip-path:inherit;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.chamfer.glow{background:linear-gradient(160deg,rgba(255,79,216,.2),rgba(83,183,255,.08) 70%)}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cards3 .chamfer{text-align:center;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}
.num{position:absolute;top:18px;left:0;right:0;color:var(--muted);font-size:.8rem}
.ico{width:40px;height:40px;fill:none;stroke:#e7a8ff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px var(--pink))}
.cards3 h3{font-size:1.1rem}.cards3 p{color:var(--muted);font-size:.88rem;max-width:230px}
.cards3.mini{margin-top:36px}.cards3.mini .chamfer{min-height:140px}.cards3.mini strong{font:700 2rem "Chakra Petch"}.cards3.mini span{color:var(--muted);font-size:.85rem}

/* brand cards */
.brands{display:grid;gap:26px}
.brand{position:relative;display:grid;grid-template-columns:230px 1fr 220px;gap:28px;align-items:center;padding:32px;
  background:linear-gradient(120deg,rgba(255,79,216,.1),rgba(20,10,34,.9) 40%,rgba(83,183,255,.08));border:1px solid var(--line);
  clip-path:polygon(24px 0,100% 0,100% calc(100% - 24px),calc(100% - 24px) 100%,0 100%,0 24px)}
.brand-rank{position:absolute;right:22px;top:12px;font:700 3rem "Chakra Petch";color:rgba(255,255,255,.06)}
.brand-tag{position:absolute;left:32px;top:0;background:var(--grad);color:#fff;font:700 .68rem "Chakra Petch";text-transform:uppercase;letter-spacing:.14em;padding:4px 12px}
.brand-logo{height:120px;display:grid;place-items:center;padding:18px;background:radial-gradient(circle,rgba(155,92,255,.35),rgba(12,6,20,.9));border:1px solid var(--line);box-shadow:inset 0 0 30px rgba(255,79,216,.15)}
.brand-logo img{max-height:84px;object-fit:contain}
.brand-logo.big{height:140px;width:260px}
.brand-info h3{font-size:1.6rem}
.ticks,.crosses{list-style:none;margin-top:10px;display:grid;gap:5px;font-size:.88rem}
.ticks li::before{content:"✓";color:#5cf0b4;margin-right:8px}
.crosses li::before{content:"✕";color:#ff6b8a;margin-right:8px}
.brand-cta{display:grid;gap:12px;justify-items:center;text-align:center}
.score strong{font-size:2.4rem;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.score span{color:var(--muted);margin-left:2px}
.brand-foot{grid-column:1/-1;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line);padding-top:14px;font-size:.8rem;color:var(--muted)}
.note{margin-top:22px;text-align:center;font-size:.8rem;color:var(--muted)}

/* scoring lens tiles */
.tilt{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;transform:perspective(1200px) rotateX(8deg) rotate(-2deg);padding:20px;border:1px solid var(--line);background:rgba(20,10,34,.6)}
.tile{grid-column:span 2;min-height:160px;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;border:1px solid rgba(255,255,255,.08);transition:transform .3s}
.tile:hover{transform:translateY(-6px)}
.tile strong{font:700 1.15rem "Chakra Petch"}.tile span{font-size:.85rem;color:#e9def5}
.t1{background:linear-gradient(135deg,#5a16a0,#1a0a2e)}.t2{background:linear-gradient(135deg,#b0217f,#2a0b3c)}.t3{background:linear-gradient(135deg,#1c4fa0,#140a28)}
.t4{grid-column:span 3;background:linear-gradient(135deg,#7a1fb0,#ff4fa0)}.t5{grid-column:span 3;background:linear-gradient(135deg,#2b1460,#53b7ff)}

/* FAQ */
.faq{border:1px solid var(--line);background:rgba(12,6,20,.5)}
.faq-item{border-bottom:1px solid var(--line)}.faq-item:last-child{border:0}
.faq-q{width:100%;display:flex;align-items:center;gap:20px;padding:18px 22px;background:none;border:0;color:var(--text);text-align:left;cursor:pointer;font:600 .85rem "Chakra Petch";text-transform:uppercase;letter-spacing:.08em}
.faq-n{color:var(--pink)}.faq-q span:nth-child(2){flex:1}
.chev{transition:transform .25s}
.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s}
.faq-a p{overflow:hidden;padding:0 22px 0 62px;color:var(--muted);font-size:.92rem}
.faq-item.open{background:linear-gradient(90deg,rgba(255,79,216,.08),transparent)}
.faq-item.open .faq-a{grid-template-rows:1fr}.faq-item.open .faq-a p{padding-bottom:20px}
.faq-item.open .chev{transform:rotate(180deg)}

/* help cards */
.hcard{display:flex;flex-direction:column;justify-content:flex-end;gap:6px;min-height:200px;padding:24px;color:#fff;border:1px solid var(--line);position:relative;overflow:hidden}
.hcard strong{font:700 1.2rem "Chakra Petch"}.hcard span{font-size:.88rem;color:#f0e6fb}
.h1{background:linear-gradient(180deg,rgba(12,6,20,0),rgba(12,6,20,.85)),linear-gradient(135deg,#ff4fd8,#5a16a0)}
.h2{background:linear-gradient(180deg,rgba(12,6,20,0),rgba(12,6,20,.85)),linear-gradient(135deg,#53b7ff,#7a1fb0)}
.h3{background:linear-gradient(180deg,rgba(12,6,20,0),rgba(12,6,20,.85)),linear-gradient(135deg,#ffb35c,#b0217f)}
.hcard:hover{color:#fff;box-shadow:0 0 30px rgba(255,79,216,.35)}

/* inner pages */
.page-hero{padding:80px 0 56px;text-align:center;border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 50% 120%,rgba(255,79,216,.35),transparent 60%),linear-gradient(180deg,#1a0630,#0c0614)}
.page-hero h1{font-size:clamp(1.6rem,3.4vw,2.4rem)}
.page-hero p{color:var(--muted);margin-top:8px}
.crumbs{font-size:.8rem;margin-bottom:12px}
.prose h2{font-size:1.25rem;margin:34px 0 10px}.prose p{color:#d7cde6;margin-bottom:12px}
.review-grid{display:grid;grid-template-columns:1fr 320px;gap:36px;align-items:start}
.review-main h2{font-size:1.3rem;margin:34px 0 12px}.review-main p{color:#d7cde6;margin-bottom:12px}
.review-top{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.lic{display:block;margin-top:8px;font-size:.85rem}
.pc{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
.pc>div{border:1px solid var(--line);padding:20px;background:rgba(20,10,34,.6)}
.bars{display:grid;gap:12px}
.bar{display:grid;grid-template-columns:130px 1fr 40px;gap:14px;align-items:center;font-size:.88rem}
.track{height:8px;background:rgba(255,255,255,.07)}.track i{display:block;height:100%;background:var(--grad);box-shadow:0 0 10px var(--pink)}
.sticky{position:sticky;top:90px}
.side h3{margin-bottom:6px}
.contact-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:28px}
.contact-grid p{margin-bottom:12px;color:#d7cde6}
.form{display:grid;gap:16px}
.form label{display:grid;gap:6px;font:600 .8rem "Chakra Petch";text-transform:uppercase;letter-spacing:.1em}
.form input,.form textarea{background:rgba(12,6,20,.7);border:1px solid var(--line);color:var(--text);padding:12px 14px;font:inherit;font-family:Inter,sans-serif;text-transform:none;letter-spacing:0}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 3px rgba(255,79,216,.2)}
.err{color:#ff8fa8;margin-bottom:12px}

/* footer */
.footer{border-top:1px solid var(--line);padding-top:64px;background:linear-gradient(180deg,#0c0614,#120720);overflow:hidden}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
.foot-grid h4{font-size:.95rem;margin-bottom:12px}
.foot-grid a:not(.logo){display:block;color:var(--muted);font-size:.88rem;margin-bottom:6px}
.foot-grid a:hover{color:#fff}
.help-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:34px;margin:44px 0 26px;padding:24px;border-block:1px solid var(--line)}
.help-logos img{height:34px;width:auto;opacity:.9;transition:opacity .2s}
.help-logos a:hover img{opacity:1}
.help-logos img[src*="begambleaware"]{filter:brightness(0) invert(1)}
.help-logos .age-lg{margin:0}
.disclaimer{font-size:.78rem;color:var(--muted);text-align:center;max-width:900px;margin:0 auto}
.foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:20px 0;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}
.legal-links a{color:var(--muted)}.legal-links a:hover{color:#fff}

/* cookie banner */
.cookie{position:fixed;left:16px;right:16px;bottom:16px;margin-inline:auto;max-width:640px;z-index:100;display:flex;gap:18px;align-items:center;padding:16px 20px;background:rgba(20,10,34,.96);border:1px solid var(--line);box-shadow:0 10px 40px rgba(0,0,0,.6),0 0 24px rgba(255,79,216,.2);font-size:.85rem}
.cookie[hidden]{display:none}
.cookie-btns{display:flex;gap:10px;flex-shrink:0}
.cookie .btn{padding:9px 18px;font-size:.75rem}

/* responsive */
@media (max-width:960px){
  .brand{grid-template-columns:1fr;text-align:center;padding:40px 22px 24px}
  .brand-logo{max-width:280px;margin:0 auto;width:100%}
  .ticks{justify-items:center}
  .review-grid,.contact-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .tilt{transform:none}
}
@media (max-width:760px){
  .nav{position:absolute;top:66px;left:0;right:0;flex-direction:column;gap:0;background:#120a1e;border-bottom:1px solid var(--line);display:none}
  .nav.open{display:flex}.nav a{padding:14px 16px;border-top:1px solid var(--line)}
  .menu-btn{display:block}
  .stats{grid-template-columns:1fr 1fr}
  .cards3,.pc{grid-template-columns:1fr}
  .tilt{grid-template-columns:1fr}.tile,.t4,.t5{grid-column:auto}
  .hero{min-height:440px}.sun{width:200px;height:200px}
  .cookie{flex-direction:column;align-items:stretch;text-align:center}
  .cookie-btns{justify-content:center}
  .foot-grid{grid-template-columns:1fr}
  .bar{grid-template-columns:100px 1fr 34px}
  .brand-logo.big{width:100%}
  .faq-a p{padding-left:22px}
}
