*{box-sizing:border-box;margin:0;padding:0}
html,body{width:100%;min-height:100%;background:#060409;color:#fff;font-family:"Segoe UI",Arial,"Helvetica Neue",sans-serif}
a{color:inherit;text-decoration:none}
:root{--hot:#f5c518;--hot2:#ff8a00;--pink:#ff3d6e}
.page{
  max-width:430px;margin:0 auto;min-height:100vh;
  background:radial-gradient(circle at 50% 0,#3d2a08,#09050b 44%,#030303);
  overflow:hidden;padding-bottom:105px;box-shadow:0 0 60px rgba(245,197,24,.18)
}
.top{height:66px;padding:17px 18px;display:flex;justify-content:space-between;align-items:center;position:relative;z-index:3}
.logo{font-weight:900;font-size:20px;letter-spacing:-.5px}
.logo span{background:linear-gradient(135deg,var(--hot),var(--hot2));color:#1a1000;padding:2px 7px;border-radius:7px;margin:0 2px}
.badge{background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.16);border-radius:30px;padding:9px 13px;font-size:13px}
.hero{min-height:500px;padding:20px 20px 30px;position:relative;overflow:hidden}
.hero:before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.72) 46%,rgba(0,0,0,.15) 100%),
    linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.88))
}
.hero-img{position:absolute;right:-70px;top:0;width:82%;height:100%;z-index:0;opacity:.92}
.hero-img img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(1.1) contrast(1.05)}
.live,.hero h1,.sub,.cta,.note{position:relative;z-index:2}
.live{
  display:inline-flex;align-items:center;gap:8px;background:rgba(245,197,24,.14);
  border:1px solid rgba(245,197,24,.55);border-radius:30px;padding:8px 13px;margin-top:12px;font-size:13px;color:#ffe9a8
}
.dot{width:8px;height:8px;border-radius:50%;background:#24ff78;box-shadow:0 0 12px #24ff78}
.hero h1{font-size:42px;line-height:1.02;text-transform:uppercase;margin-top:26px;text-shadow:0 4px 18px rgba(0,0,0,.65)}
.hero em{color:var(--hot);font-style:normal}
.sub{font-size:16px;line-height:1.55;color:#f0e3e8;max-width:270px;margin-top:18px}
.cta{
  display:inline-flex;align-items:center;justify-content:center;margin-top:28px;
  background:linear-gradient(135deg,var(--hot),var(--hot2));color:#1a1000;
  min-width:220px;height:64px;border-radius:999px;font-size:20px;font-weight:900;
  box-shadow:0 12px 32px rgba(245,197,24,.42);letter-spacing:.2px
}
.note{font-size:12px;color:#cfc0c6;margin-top:13px}
.float-pop{
  position:fixed;left:50%;transform:translateX(-50%);top:76px;width:380px;max-width:92%;
  background:rgba(12,10,14,.82);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);
  border-radius:18px;padding:10px;display:flex;align-items:center;gap:10px;z-index:9;
  box-shadow:0 15px 40px rgba(0,0,0,.35);animation:pop 5s ease-in-out infinite;pointer-events:none
}
.float-pop .thumb{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,var(--hot),var(--hot2));overflow:hidden;flex:none}
.float-pop img{width:100%;height:100%;object-fit:cover}
.float-pop div{font-size:13px;color:#e9dde4;line-height:1.3}
.float-pop b{color:#fff}
.marquee-wrap{padding:22px 0 10px;margin-top:-26px;position:relative;z-index:2}
.marquee-title{padding:0 20px 13px;text-transform:uppercase;font-size:18px;font-weight:900;display:flex;justify-content:space-between;align-items:center}
.marquee-title span{font-size:12px;color:#ffe08a;font-weight:700}
.track{display:flex;gap:12px;width:max-content;animation:scroll 28s linear infinite;padding:0 12px}
.track.reverse{animation:scrollR 32s linear infinite;margin-top:12px}
.track.slow{animation:scroll 38s linear infinite;margin-top:12px}
.poster{
  width:124px;height:176px;border-radius:16px;overflow:hidden;position:relative;flex:0 0 auto;
  background:linear-gradient(135deg,#2d1a08,#101010);box-shadow:0 10px 25px rgba(0,0,0,.45);
  border:1px solid rgba(255,255,255,.09)
}
.poster img{width:100%;height:100%;object-fit:cover;display:block}
.poster:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.86))}
.poster .rate{position:absolute;left:9px;top:9px;background:rgba(0,0,0,.58);border-radius:999px;padding:4px 8px;font-size:12px;z-index:2}
.poster b{position:absolute;left:9px;right:9px;bottom:10px;font-size:15px;z-index:2;text-shadow:0 2px 8px #000}
.stats{margin:22px 18px 34px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);border-radius:18px;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
.stats div{padding:16px 8px;text-align:center;border-right:1px solid rgba(255,255,255,.11)}
.stats div:last-child{border-right:0}
.stats b{color:var(--hot);font-size:18px;display:block}
.stats span{font-size:11px;color:#fff}
.grid-section{padding:0 18px}
.grid-section h2,.reviews h2{text-transform:uppercase;font-size:25px;margin-bottom:10px}
.grid-section p{font-size:14px;line-height:1.45;color:#f4e9ee;margin-bottom:20px}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.card{
  height:270px;border-radius:18px;overflow:hidden;position:relative;
  background:linear-gradient(135deg,#1b1220,#3b2a0a);border:1px solid rgba(255,255,255,.12);
  box-shadow:0 10px 28px rgba(0,0,0,.38)
}
.card img{width:100%;height:100%;object-fit:cover;display:block}
.card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.9))}
.card:after{content:"▶";position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);font-size:62px;color:rgba(255,255,255,.78);text-shadow:0 4px 16px rgba(0,0,0,.45)}
.card span{position:absolute;left:14px;bottom:58px;font-size:13px;color:#fff;z-index:2}
.card b{position:absolute;left:14px;right:14px;bottom:22px;font-size:23px;line-height:1;z-index:2}
.banner{
  margin:34px 18px 0;background:linear-gradient(135deg,rgba(245,197,24,.22),rgba(255,138,0,.12));
  border:1px solid rgba(255,255,255,.18);border-radius:18px;min-height:104px;
  display:flex;align-items:center;justify-content:space-between;padding:19px 22px
}
.banner b{font-size:22px}
.banner div{font-size:15px;line-height:1.35}
.banner span{font-size:48px;color:var(--hot)}
.reviews{padding:32px 18px 0}
.comment{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px;margin:12px 0;color:#f3e8ec;font-size:14px;line-height:1.45}
.fixed{
  position:fixed;left:50%;transform:translateX(-50%);bottom:18px;width:390px;max-width:90%;height:64px;
  border-radius:999px;background:linear-gradient(135deg,var(--hot),var(--hot2));color:#1a1000;
  display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;z-index:20;
  box-shadow:0 10px 35px rgba(245,197,24,.45)
}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes scrollR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@keyframes pop{0%,100%{opacity:.94;transform:translateX(-50%) translateY(0)}50%{opacity:1;transform:translateX(-50%) translateY(-6px)}}
@media(min-width:700px){.page{border-radius:0}}

/* Age gate */
.age-gate{
  position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  padding:20px;background:#000;overflow:auto
}
.age-gate.hidden{display:none!important}
.age-card{
  width:min(360px,100%);background:#141414;border:1px solid rgba(255,40,40,.35);
  border-radius:18px;padding:28px 22px 22px;text-align:center;
  box-shadow:0 0 0 1px rgba(255,0,0,.12),0 0 48px rgba(220,0,0,.55),0 0 90px rgba(180,0,0,.28)
}
.age-badge{
  width:52px;height:52px;margin:0 auto 18px;border-radius:12px;background:#e10600;
  color:#fff;font-weight:900;font-size:18px;display:flex;align-items:center;justify-content:center;
  box-shadow:0 6px 18px rgba(225,6,0,.45)
}
.age-card h2{
  margin:0 0 14px;font-size:clamp(18px,4.6vw,22px);line-height:1.25;font-weight:900;
  letter-spacing:.02em;text-transform:uppercase;color:#fff
}
.age-card p{margin:0 0 22px;font-size:14px;line-height:1.55;color:#e8e8e8}
.age-yes{
  width:100%;border:0;cursor:pointer;border-radius:12px;padding:14px 16px;
  background:linear-gradient(180deg,#ff2a2a,#c40000);color:#fff;font-weight:800;
  font-size:15px;letter-spacing:.02em;display:inline-flex;align-items:center;justify-content:center;gap:8px;
  box-shadow:0 8px 22px rgba(200,0,0,.4)
}
.age-yes svg{width:18px;height:18px;flex:none}
.age-yes:active{transform:scale(.98)}
.age-no{
  width:100%;margin-top:12px;border:1px solid rgba(255,255,255,.18);cursor:pointer;
  border-radius:12px;padding:13px 16px;background:#1a1a1a;color:#f0f0f0;font-size:14px
}
.age-no:active{transform:scale(.98)}
body.age-locked{overflow:hidden}
body.age-locked .page,
body.age-locked .fixed{visibility:hidden;pointer-events:none}
body.age-ok .age-gate{display:none!important}
