/*
Theme Name: Grandbet88 Info Portal
Theme URI: https://grandbet88.co/
Author: Grandbet88 Web Team
Description: Tema portal informasi & edukasi permainan Grandbet88 (struktur mengikuti konvensi WordPress theme). Statis, responsif, SEO-friendly.
Version: 1.0.0
Text Domain: grandbet88
*/
:root{
  --red:#c8102e; --red-2:#a30d26; --red-3:#6d0817;
  --gold:#ffc72c; --gold-2:#f0a500; --gold-3:#ffe08a; --gold-4:#b97e00;
  --green:#12a150; --green-2:#0c7d3c;
  --blue:#1e62d0; --blue-2:#123f8f;
  --ink:#0b0e14; --panel:#12161f; --panel-2:#1a2029; --line:#273041;
  --paper:#ffffff; --cream:#faf7f0; --text:#2a2f3a; --muted:#5b6470;
  --ok:#e8f7ee; --ok-b:#12a150; --info:#eaf1fd; --info-b:#1e62d0;
  --warn:#fdf3e0; --warn-b:#c98a00; --danger:#fdeaea; --danger-b:#c8102e;
  --rad:14px; --rad-s:9px;
  --shadow:0 10px 30px rgba(4,6,12,.28);
  --shadow-s:0 4px 14px rgba(4,6,12,.16);
  --ff-d:"Poppins","Segoe UI",system-ui,-apple-system,Arial,sans-serif;
  --ff-b:"Open Sans","Segoe UI",system-ui,-apple-system,Arial,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--ff-b);color:var(--text);background:var(--cream);line-height:1.7;font-size:16px;overflow-x:clip;padding-bottom:96px}
img{max-width:100%;height:auto;display:block}
a{color:var(--red);text-decoration:none}
a:hover{text-decoration:underline}
ul,ol{padding-left:1.35rem}
h1,h2,h3,h4{font-family:var(--ff-d);line-height:1.25;color:var(--ink);}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.narrow{max-width:860px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-9999px;top:0;background:var(--gold);color:#000;padding:10px 16px;z-index:999;font-weight:700}
.skip:focus{left:8px;top:8px}

/* ---------- tombol ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--ff-d);font-weight:700;border-radius:999px;padding:13px 28px;font-size:15px;line-height:1;cursor:pointer;border:2px solid transparent;transition:transform .15s ease,box-shadow .15s ease,filter .15s;text-decoration:none;white-space:nowrap}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn-gold{background:linear-gradient(180deg,#ffd75e,var(--gold) 45%,var(--gold-2));color:#3a2500;border-color:#a86f00;box-shadow:0 6px 18px rgba(240,165,0,.35),inset 0 1px 0 #fff6d8}
.btn-green{background:linear-gradient(180deg,#1fbe67,var(--green) 50%,var(--green-2));color:#fff;box-shadow:0 6px 18px rgba(18,161,80,.35),inset 0 1px 0 #b6f2d0}
.btn-blue{background:linear-gradient(180deg,#3f7ee0,var(--blue) 55%,var(--blue-2));color:#fff;box-shadow:0 6px 18px rgba(30,98,208,.32),inset 0 1px 0 #cfe0fb}
.btn-red{background:linear-gradient(180deg,#e03350,var(--red) 55%,var(--red-2));color:#fff;box-shadow:0 6px 18px rgba(200,16,46,.35),inset 0 1px 0 #ffc9d2}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}
.btn-dark{background:var(--ink);color:var(--gold-3);border-color:#000}
.btn-sm{padding:9px 18px;font-size:13px}
.btn-lg{padding:16px 34px;font-size:16px}

/* ---------- header ---------- */
.topbar{background:linear-gradient(90deg,var(--red-3),var(--red) 30%,var(--red) 70%,var(--red-3));color:#fff;font-size:12.5px}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:36px;flex-wrap:wrap;padding-top:4px;padding-bottom:4px}
.topbar .tb-l{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tag-18{display:inline-flex;align-items:center;justify-content:center;background:#000;border:1.5px solid var(--gold);color:var(--gold);font-weight:800;font-family:var(--ff-d);border-radius:6px;padding:1px 7px;font-size:11.5px;letter-spacing:.4px}
.topbar a{color:#ffe9b0}
.tb-r{display:flex;gap:14px;align-items:center}
.tb-r a:hover{color:#fff;text-decoration:underline}
.site-header{background:rgba(11,14,20,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:60}
.hbar{display:flex;align-items:center;gap:18px;min-height:70px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--ff-d);flex-shrink:0}
.brand .coin{width:38px;height:38px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#ffe9a8,var(--gold) 45%,#9a6b00);border:2px solid #7a5600;display:flex;align-items:center;justify-content:center;color:#4a3400;font-weight:900;font-size:17px;box-shadow:0 3px 10px rgba(240,165,0,.4);position:relative}
.brand .coin::after{content:"88";font-family:var(--ff-d)}
.brand-txt{color:#fff;font-weight:800;font-size:21px;letter-spacing:.3px;line-height:1}
.brand-txt small{display:block;font-weight:600;font-size:10px;color:var(--gold-3);letter-spacing:2.2px;margin-top:3px}
.nav{display:flex;align-items:center;gap:4px;margin-left:6px}
.nav a{color:#dfe4ec;font-family:var(--ff-d);font-weight:600;font-size:14px;padding:9px 12px;border-radius:8px}
.nav a:hover{color:var(--gold);background:rgba(255,255,255,.06);text-decoration:none}
.nav a.on{color:var(--gold);background:rgba(255,199,44,.12)}
.hact{margin-left:auto;display:flex;align-items:center;gap:10px}
.search-box{position:relative}
.search-box input{background:#0e1218;border:1px solid var(--line);color:#e7ebf2;border-radius:999px;padding:9px 16px 9px 38px;font-size:13.5px;width:210px;outline:none;font-family:var(--ff-b);transition:border .15s}
.search-box input:focus{border-color:var(--gold)}
.search-box .s-ico{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#8b93a3;font-size:14px;pointer-events:none}
.s-res{position:absolute;top:calc(100% + 8px);right:0;width:340px;max-width:82vw;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden;display:none;text-align:left}
.s-res.open{display:block}
.s-res .sr-h{padding:9px 14px;font-size:11.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:1px;background:var(--cream);font-family:var(--ff-d)}
.s-res a{display:block;padding:10px 14px;color:var(--text);border-bottom:1px solid #eef0f4;font-size:13.5px}
.s-res a:last-child{border-bottom:0}
.s-res a:hover{background:var(--cream);text-decoration:none}
.s-res a b{color:var(--red);display:block;font-family:var(--ff-d);font-size:13.5px}
.s-res .sr-empty{padding:14px;color:var(--muted);font-size:13px}
.mmenu{display:none}
.hburger{display:none;background:none;border:1px solid var(--line);color:#fff;font-size:20px;border-radius:8px;padding:6px 12px;cursor:pointer}
.mnav-details{display:none}
@media(max-width:1080px){
  .nav,.search-box{display:none}
  .hact{margin-left:auto}
  .hburger{display:block}
  .mnav-details{display:block;position:absolute;top:100%;left:0;right:0;background:var(--ink);border-bottom:1px solid var(--line)}
  .mnav-details summary{list-style:none;cursor:pointer;padding:0}
  .mnav-details summary::-webkit-details-marker{display:none}
  .mnav-inner{padding:10px 20px 18px;display:grid;gap:6px}
  .mnav-inner a{color:#e6eaf1;padding:10px 12px;border-radius:8px;font-family:var(--ff-d);font-weight:600}
  .mnav-inner a:hover{background:rgba(255,255,255,.06);text-decoration:none;color:var(--gold)}
  .mnav-inner .m-search{margin:6px 0 8px}
  .mnav-inner .m-search input{width:100%;background:#0e1218;border:1px solid var(--line);color:#e7ebf2;border-radius:10px;padding:11px 14px;font-size:14px;outline:none}
}
@media(max-width:600px){
  .brand .coin{width:30px;height:30px;font-size:13px}
  .brand-txt{font-size:15px}
  .brand-txt small{display:none}
  .hbar{gap:8px;min-height:58px}
  .hact{gap:7px}
  .hact .btn-sm{padding:7px 10px;font-size:11.5px}
  .hburger{padding:6px 9px;font-size:16px}
  .topbar .wrap{justify-content:center;text-align:center;font-size:11.5px}
}
@media(max-width:480px){
  .btn{white-space:normal;text-align:center}
  .hero-cta .btn{flex:1 1 auto}
}
@media(max-width:370px){
  .hact{display:none}
}

/* ---------- hero ---------- */
.hero{position:relative;color:#fff;overflow:hidden;background:var(--ink)}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.5}
.hero-ov{position:absolute;inset:0;background:linear-gradient(100deg,rgba(7,8,12,.95) 15%,rgba(109,8,23,.82) 55%,rgba(7,8,12,.55)),radial-gradient(1000px 400px at 85% -10%,rgba(255,199,44,.22),transparent 60%)}
.hero-in{position:relative;padding:66px 20px 74px;display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
.hero .h-kicker{display:inline-flex;align-items:center;gap:9px;background:rgba(255,199,44,.14);border:1px solid rgba(255,199,44,.45);color:var(--gold-3);font-size:12.5px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;font-family:var(--ff-d);padding:7px 15px;border-radius:999px;margin-bottom:20px}
.hero h1{color:#fff;font-size:44px;font-weight:800;letter-spacing:-.4px;margin-bottom:16px}
.hero h1 .hl{color:var(--gold)}
.hero p.lead{color:#c9cfda;font-size:17px;max-width:560px;margin-bottom:26px}
.hero .chips{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}
.hero .chip{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:7px 14px;font-size:12.5px;color:#e7ebf2}
.hero .chip i{width:8px;height:8px;border-radius:50%;display:inline-block}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}
.hero-card{background:linear-gradient(160deg,rgba(26,32,41,.92),rgba(15,18,26,.96));border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.hero-card::before{content:"";position:absolute;top:-60px;right:-60px;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,rgba(255,199,44,.2),transparent 65%)}
.hero-card h3{color:var(--gold);font-size:16px;margin-bottom:14px;display:flex;align-items:center;gap:9px}
.hc-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line)}
.hc-row:last-of-type{border-bottom:0}
.hc-ic{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.hc-row b{color:#fff;font-family:var(--ff-d);font-size:13.5px;display:block}
.hc-row span{color:#98a1b0;font-size:12.5px}
@media(max-width:920px){.hero-in{grid-template-columns:1fr;padding-top:48px;padding-bottom:52px}.hero h1{font-size:34px}.hero-card{max-width:520px}}

/* ---------- sections umum ---------- */
.sec{padding:64px 0}
.sec-cream{background:var(--cream)}
.sec-white{background:#fff}
.sec-dark{background:radial-gradient(900px 380px at 15% -20%,rgba(200,16,46,.25),transparent 55%),radial-gradient(800px 380px at 90% 120%,rgba(255,199,44,.13),transparent 55%),var(--ink);color:#c9cfda}
.sec-dark h2,.sec-dark h3{color:#fff}
.sec-head{max-width:760px;margin:0 auto 40px;text-align:center}
.sec-head.left{text-align:left;margin-left:0}
.sec-head .eyebrow{display:inline-block;font-family:var(--ff-d);font-weight:700;font-size:12px;letter-spacing:2.4px;text-transform:uppercase;color:var(--red);background:#fdeaea;padding:5px 14px;border-radius:999px;margin-bottom:14px}
.sec-dark .sec-head .eyebrow{color:var(--gold);background:rgba(255,199,44,.12);border:1px solid rgba(255,199,44,.3)}
.sec-head h2{font-size:31px;font-weight:800;letter-spacing:-.3px;margin-bottom:12px}
.sec-head p{color:var(--muted);font-size:15.5px}
.sec-dark .sec-head p{color:#a6aebc}
@media(max-width:640px){.sec{padding:48px 0}.sec-head h2{font-size:25px}}

/* ---------- kartu kategori ---------- */
.grid{display:grid;gap:22px}
.g-2{grid-template-columns:repeat(2,1fr)}
.g-3{grid-template-columns:repeat(3,1fr)}
.g-4{grid-template-columns:repeat(4,1fr)}
@media(max-width:980px){.g-4{grid-template-columns:repeat(2,1fr)}.g-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.g-2,.g-3,.g-4{grid-template-columns:1fr}}
.cat-card{background:#fff;border:1px solid #ece7da;border-radius:var(--rad);overflow:hidden;box-shadow:var(--shadow-s);transition:transform .18s ease,box-shadow .18s ease;display:flex;flex-direction:column}
.cat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.cat-card .cc-img{position:relative;aspect-ratio:16/9;overflow:hidden}
.cat-card .cc-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.cat-card:hover .cc-img img{transform:scale(1.05)}
.cat-card .cc-tag{position:absolute;top:12px;left:12px;background:rgba(11,14,20,.85);color:var(--gold);border:1px solid rgba(255,199,44,.5);font-family:var(--ff-d);font-size:11px;font-weight:700;letter-spacing:1.4px;padding:4px 11px;border-radius:999px;text-transform:uppercase}
.cat-card .cc-b{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.cat-card h3{font-size:18.5px}
.cat-card p{font-size:14px;color:var(--muted);flex:1}
.cat-card .cc-more{font-family:var(--ff-d);font-weight:700;font-size:13.5px;color:var(--red)}
.cat-card .cc-more:hover{text-decoration:underline}

/* ---------- langkah pemula ---------- */
.steps{counter-reset:st;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.steps.s3{grid-template-columns:repeat(3,1fr)}
@media(max-width:980px){.steps{grid-template-columns:repeat(2,1fr)}.steps.s3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.steps{grid-template-columns:1fr}.steps.s3{grid-template-columns:1fr}}
.step{background:#fff;border:1px solid #ece7da;border-radius:var(--rad);padding:24px 22px;position:relative;box-shadow:var(--shadow-s)}
.step .st-n{counter-increment:st;width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:var(--ff-d);font-weight:800;font-size:20px;margin-bottom:16px;color:#fff;background:linear-gradient(160deg,var(--red),var(--red-2));box-shadow:0 6px 14px rgba(200,16,46,.3)}
.step:nth-child(2) .st-n{background:linear-gradient(160deg,var(--gold-2),var(--gold-4))}
.step:nth-child(3) .st-n{background:linear-gradient(160deg,var(--green),var(--green-2))}
.step:nth-child(4) .st-n{background:linear-gradient(160deg,var(--blue),var(--blue-2))}
.step h3{font-size:16.5px;margin-bottom:8px}
.step p{font-size:14px;color:var(--muted)}

/* ---------- CTA daftar/masuk ---------- */
.entry-cta{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:760px){.entry-cta{grid-template-columns:1fr}}
.cta-box{border-radius:var(--rad);padding:30px;position:relative;overflow:hidden;color:#fff}
.cta-box.c-red{background:linear-gradient(150deg,var(--red) 0%,var(--red-3) 90%)}
.cta-box.c-green{background:linear-gradient(150deg,var(--green) 0%,#065d2c 90%)}
.cta-box h3{color:#fff;font-size:21px;margin-bottom:10px}
.cta-box p{color:rgba(255,255,255,.85);font-size:14.5px;margin-bottom:20px}
.cta-box ul{margin:0 0 20px;color:rgba(255,255,255,.9);font-size:14px}
.cta-box .coin-deco{position:absolute;right:-34px;bottom:-34px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,224,138,.5),transparent 60%)}
.cta-box .btn{position:relative}

/* ---------- highlights ---------- */
.hl-card{background:#fff;border:1px solid #ece7da;border-radius:var(--rad);padding:26px;box-shadow:var(--shadow-s)}
.hl-card .hl-ic{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:16px}
.hl-card h3{font-size:17px;margin-bottom:8px}
.hl-card p{font-size:14px;color:var(--muted)}
.hl-1{background:var(--danger)}.hl-2{background:var(--warn)}.hl-3{background:var(--ok)}.hl-4{background:var(--info)}.hl-5{background:#f3e8ff}.hl-6{background:#e5f6fa}
@media(max-width:600px){.hl-5,.hl-6{display:none}}

/* ---------- mobile showcase ---------- */
.mob-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center}
@media(max-width:880px){.mob-wrap{grid-template-columns:1fr}}
.phone{width:min(280px,80vw);margin:0 auto;border-radius:38px;background:#05070b;border:10px solid #171c26;box-shadow:0 30px 60px rgba(0,0,0,.45),inset 0 0 0 2px #2a3242;padding:14px 12px;position:relative}
.phone .p-notch{width:96px;height:16px;background:#171c26;border-radius:0 0 12px 12px;margin:-14px auto 10px}
.phone .p-screen{border-radius:22px;overflow:hidden;aspect-ratio:9/17.5;background:var(--ink);position:relative}
.phone .p-screen img{width:100%;height:100%;object-fit:cover;opacity:.92}
.phone .p-fab{position:absolute;bottom:14px;left:12px;right:12px;display:flex;gap:8px}
.phone .p-fab span{flex:1;text-align:center;font-family:var(--ff-d);font-weight:800;font-size:11px;border-radius:8px;padding:7px 0}
.phone .p-fab .f1{background:linear-gradient(180deg,#ffd75e,var(--gold-2));color:#3a2500}
.phone .p-fab .f2{background:linear-gradient(180deg,#1fbe67,var(--green-2));color:#fff}
.feat-list{display:grid;gap:16px}
.feat-li{display:flex;gap:15px;background:#fff;border:1px solid #ece7da;border-radius:12px;padding:16px 18px;box-shadow:var(--shadow-s)}
.feat-li .fi{width:42px;height:42px;flex-shrink:0;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:19px}
.feat-li b{font-family:var(--ff-d);font-size:15px;display:block;margin-bottom:3px}
.feat-li span{font-size:13.5px;color:var(--muted)}

/* ---------- testi ---------- */
.testi-card{background:#fff;border:1px solid #ece7da;border-radius:var(--rad);padding:26px;box-shadow:var(--shadow-s);display:flex;flex-direction:column;gap:14px}
.stars{color:var(--gold-2);letter-spacing:2px;font-size:15px}
.testi-card p{font-size:14.5px;color:var(--text);font-style:italic;flex:1}
.testi-who{display:flex;align-items:center;gap:12px}
.av{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--ff-d);font-weight:800;color:#fff;font-size:15px}
.testi-who b{font-family:var(--ff-d);font-size:14px;display:block}
.testi-who span{font-size:12.5px;color:var(--muted)}
.testi-note{font-size:12px;color:var(--muted);text-align:center;margin-top:18px}

/* ---------- lab / kalkulator ---------- */
.lab-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:26px}
@media(max-width:920px){.lab-grid{grid-template-columns:1fr}}
.calc{background:linear-gradient(160deg,#171d29,#10141c);border:1px solid var(--line);border-radius:18px;padding:28px;color:#dbe1ea;box-shadow:var(--shadow)}
.calc h3{color:var(--gold);font-size:17px;margin-bottom:6px}
.calc .sub{font-size:13px;color:#98a1b0;margin-bottom:18px}
.calc label{display:block;font-size:12.5px;font-weight:700;color:#aab3c2;margin:14px 0 6px;font-family:var(--ff-d);letter-spacing:.3px}
.calc input[type=number],.calc select{width:100%;background:#0d1117;border:1px solid var(--line);color:#eef1f6;border-radius:10px;padding:11px 14px;font-size:15px;font-family:var(--ff-b);outline:none}
.calc input:focus,.calc select:focus{border-color:var(--gold)}
.calc .res{margin-top:20px;background:rgba(255,199,44,.08);border:1px dashed rgba(255,199,44,.4);border-radius:12px;padding:16px 18px;font-size:14px}
.calc .res b{color:var(--gold);font-family:var(--ff-d)}
.calc .res .big{font-size:21px;display:block;margin:4px 0 8px}
.calc .disclaim{font-size:11.5px;color:#7d8695;margin-top:12px}
.gloss{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(max-width:560px){.gloss{grid-template-columns:1fr}}
.gloss-card{background:#fff;border:1px solid #ece7da;border-left:4px solid var(--gold);border-radius:10px;padding:14px 16px;box-shadow:var(--shadow-s)}
.gloss-card b{font-family:var(--ff-d);font-size:13.5px;color:var(--ink);display:block;margin-bottom:4px}
.gloss-card span{font-size:12.8px;color:var(--muted)}

/* ---------- keamanan & RG ---------- */
.pillar{background:#fff;border:1px solid #ece7da;border-radius:12px;padding:20px;display:flex;gap:14px;box-shadow:var(--shadow-s)}
.pillar .pi{width:44px;height:44px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:20px}
.pillar b{font-family:var(--ff-d);font-size:14.5px;display:block;margin-bottom:3px}
.pillar span{font-size:13px;color:var(--muted)}
.rg-band{background:linear-gradient(120deg,#0c7d3c,#0a5c2e);border-radius:var(--rad);color:#fff;padding:30px;display:flex;gap:22px;align-items:center;flex-wrap:wrap;box-shadow:var(--shadow)}
.rg-band h3{color:#fff;font-size:19px;margin-bottom:6px;flex:1 1 260px}
.rg-band p{font-size:14px;color:rgba(255,255,255,.88);flex:1 1 320px}

/* ---------- FAQ ---------- */
.faq{display:grid;gap:12px;max-width:860px;margin:0 auto}
.faq details{background:#fff;border:1px solid #ece7da;border-radius:12px;box-shadow:var(--shadow-s);overflow:hidden}
.faq details[open]{border-color:var(--gold)}
.faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:14px;padding:17px 20px;font-family:var(--ff-d);font-weight:700;font-size:15.2px;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";margin-left:auto;width:30px;height:30px;flex-shrink:0;border-radius:50%;background:var(--cream);border:1px solid #e5dec9;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--red);transition:transform .2s}
.faq details[open] summary::after{content:"−";transform:rotate(180deg)}
.faq .fa-body{padding:0 20px 18px;font-size:14.5px;color:var(--muted);border-top:1px dashed #ece7da;padding-top:14px}

/* ---------- tag cloud ---------- */
.tagcloud{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.tagcloud a{font-family:var(--ff-d);font-weight:600;color:#fff;background:linear-gradient(160deg,var(--panel-2),var(--ink));border:1px solid var(--line);border-radius:999px;padding:8px 18px;transition:transform .15s,border-color .15s}
.tagcloud a:hover{transform:translateY(-2px);border-color:var(--gold);color:var(--gold);text-decoration:none}
.tagcloud .t2{font-size:13px;padding:6px 14px;color:#c2c9d5}
.tagcloud .t3{font-size:15px}
.tagcloud .t4{font-size:17px;color:var(--gold-3)}
.tagcloud .t5{font-size:19px;color:var(--gold);border-color:rgba(255,199,44,.4)}

/* ---------- breadcrumb ---------- */
.crumbs{background:var(--ink);border-bottom:1px solid var(--line)}
.crumbs .wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:11px;padding-bottom:11px;font-size:12.5px;color:#98a1b0}
.crumbs a{color:#c9cfda}
.crumbs a:hover{color:var(--gold)}
.crumbs .sep{color:#5a6270}
.crumbs b{color:var(--gold-3);font-weight:600}

/* ---------- artikel ---------- */
.art-hero{position:relative;color:#fff;overflow:hidden}
.art-hero .ah-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.art-hero .ah-ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,8,12,.78),rgba(7,8,12,.88))}
.art-hero .ah-in{position:relative;padding:58px 20px 46px;max-width:900px;margin:0 auto}
.art-hero .ah-tag{display:inline-block;background:rgba(255,199,44,.15);border:1px solid rgba(255,199,44,.45);color:var(--gold);font-family:var(--ff-d);font-size:11.5px;font-weight:700;letter-spacing:1.8px;text-transform:uppercase;padding:5px 13px;border-radius:999px;margin-bottom:16px}
.art-hero h1{color:#fff;font-size:34px;font-weight:800;letter-spacing:-.3px;margin-bottom:14px}
.art-hero .meta{display:flex;gap:18px;flex-wrap:wrap;color:#a6aebc;font-size:13px;align-items:center}
.art-hero .meta .m{display:inline-flex;align-items:center;gap:6px}
@media(max-width:640px){.art-hero h1{font-size:26px}}
.entry-content{background:#fff;border:1px solid #ece7da;border-radius:var(--rad);box-shadow:var(--shadow-s);padding:clamp(22px,4vw,44px);max-width:900px;margin:-30px auto 0;position:relative}
.entry-content>p:first-of-type{font-size:17px}
.entry-content h2{font-size:24px;margin:34px 0 14px;padding-left:14px;border-left:5px solid var(--red)}
.entry-content h3{font-size:18.5px;margin:26px 0 10px;color:var(--red-2)}
.entry-content p{margin-bottom:14px;color:#333947}
.entry-content ul,.entry-content ol{margin:0 0 16px;color:#333947}
.entry-content li{margin-bottom:7px}
.entry-content li::marker{color:var(--red);font-weight:700}
.entry-content strong{color:var(--ink)}
.entry-content img.rounded{border-radius:12px;box-shadow:var(--shadow-s);margin:10px 0 18px}
.figcap{font-size:12.5px;color:var(--muted);text-align:center;margin:-10px 0 20px}
.toc{background:var(--cream);border:1px solid #ece7da;border-radius:12px;padding:18px 22px;margin-bottom:8px}
.toc b{font-family:var(--ff-d);display:block;margin-bottom:8px;font-size:14px}
.toc ol{margin:0;font-size:14px;columns:2;column-gap:28px}
@media(max-width:600px){.toc ol{columns:1}}
.keybox{background:var(--info);border:1px solid #c7d8f5;border-radius:12px;padding:18px 20px;margin:20px 0}
.keybox.warn{background:var(--warn);border-color:#ecd9a8}
.keybox.ok{background:var(--ok);border-color:#bfe8d0}
.keybox.danger{background:var(--danger);border-color:#f2c3ca}
.keybox b.kt{font-family:var(--ff-d);display:block;margin-bottom:6px;font-size:14.5px}
.entry-content .keybox p{margin-bottom:6px;font-size:14px}
.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:18px 0;border-radius:12px;border:1px solid #e8e2d2}
.spec{width:100%;border-collapse:collapse;background:#fff;font-size:14px;min-width:520px}
.spec caption{caption-side:top;text-align:left;font-family:var(--ff-d);font-weight:700;padding:12px 16px;background:linear-gradient(90deg,var(--red),var(--red-2));color:#fff;border-radius:12px 12px 0 0;font-size:14.5px}
.spec th,.spec td{padding:11px 16px;text-align:left;border-bottom:1px solid #f0ebdf;vertical-align:top}
.spec th{background:var(--cream);font-family:var(--ff-d);font-size:12.5px;letter-spacing:.4px;text-transform:uppercase;color:#6b5b2e}
.spec tr:last-child td{border-bottom:0}
.spec td b{font-family:var(--ff-d)}
.spec .yes{color:var(--ok-b);font-weight:700}
.spec .no{color:var(--red);font-weight:700}
.art-foot{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px;padding-top:22px;border-top:1px dashed #e8e2d2;align-items:center;justify-content:space-between}
.art-foot .next{font-family:var(--ff-d);font-weight:700;font-size:14px}
.rel-box{max-width:900px;margin:26px auto 0;background:#fff;border:1px solid #ece7da;border-radius:var(--rad);padding:24px;box-shadow:var(--shadow-s)}
.rel-box h3{font-size:16px;margin-bottom:14px}
.rel-box ul{list-style:none;padding:0;display:grid;gap:8px}
.rel-box a{display:flex;gap:10px;align-items:baseline;font-size:14px;color:var(--text)}
.rel-box a::before{content:"▶";color:var(--gold-2);font-size:10px}
.rel-box a:hover{color:var(--red);text-decoration:underline}

/* ---------- promo hub ---------- */
.promo-card{background:#fff;border:1px solid #ece7da;border-radius:var(--rad);overflow:hidden;box-shadow:var(--shadow-s);display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}
.promo-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.promo-card .pc-img{position:relative;aspect-ratio:16/8;overflow:hidden}
.promo-card .pc-img img{width:100%;height:100%;object-fit:cover}
.promo-card .pc-ribbon{position:absolute;top:12px;left:12px;background:linear-gradient(90deg,var(--red),var(--red-2));color:#fff;font-family:var(--ff-d);font-weight:700;font-size:11px;letter-spacing:1.2px;padding:5px 12px;border-radius:999px;text-transform:uppercase}
.promo-card .pc-b{padding:20px;flex:1;display:flex;flex-direction:column;gap:10px}
.promo-card h3{font-size:17px}
.promo-card .pc-val{font-family:var(--ff-d);font-weight:800;font-size:22px;color:var(--red)}
.promo-card p{font-size:13.5px;color:var(--muted);flex:1}
.pc-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted);border-top:1px dashed #ece7da;padding-top:12px}
.pc-meta span{display:inline-flex;gap:5px;align-items:center}

/* ---------- CTA band ---------- */
.cta-band{background:linear-gradient(120deg,var(--red-3),var(--red) 55%,#8a0a1f);border-radius:var(--rad);padding:36px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.cta-band::before{content:"";position:absolute;inset:0;background:radial-gradient(500px 200px at 90% 0%,rgba(255,199,44,.25),transparent 60%)}
.cta-band h3{color:#fff;font-size:22px;position:relative}
.cta-band p{color:rgba(255,255,255,.85);font-size:14px;position:relative;margin-top:6px}
.cta-band .btn{position:relative}

/* ---------- form ---------- */
.form-wrap{max-width:520px;margin:0 auto}
.form-card{background:#fff;border:1px solid #ece7da;border-radius:18px;padding:34px;box-shadow:var(--shadow)}
.form-card h1{font-size:26px;margin-bottom:6px}
.form-card .sub{color:var(--muted);font-size:14px;margin-bottom:22px}
.f-field{margin-bottom:16px}
.f-field label{display:block;font-family:var(--ff-d);font-weight:600;font-size:13px;margin-bottom:6px;color:var(--ink)}
.f-field label .req{color:var(--red)}
.f-field input{width:100%;border:1.5px solid #ddd6c6;border-radius:10px;padding:12px 15px;font-size:15px;font-family:var(--ff-b);outline:none;transition:border .15s;background:#fffdf8;color:var(--text)}
.f-field input:focus{border-color:var(--red);background:#fff}
.f-field .hint{font-size:12px;color:var(--muted);margin-top:5px}
.f-field.err input{border-color:var(--red);background:#fff5f5}
.f-check{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--text);margin:4px 0 18px}
.f-check input{margin-top:3px;width:16px;height:16px;accent-color:var(--red)}
.f-note{font-size:12px;color:var(--muted);text-align:center;margin-top:16px}
.form-side{background:linear-gradient(160deg,var(--ink),#1a1020);border:1px solid var(--line);border-radius:18px;padding:30px;color:#c9cfda}
.form-side h2{color:var(--gold);font-size:17px;margin-bottom:14px}
.form-side ul{display:grid;gap:11px;font-size:13.5px}
.auth-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:26px;align-items:start;max-width:1000px;margin:0 auto}
@media(max-width:880px){.auth-grid{grid-template-columns:1fr}}
.overlay-redirect{position:fixed;inset:0;background:rgba(7,8,12,.92);z-index:200;display:none;align-items:center;justify-content:center;flex-direction:column;gap:18px;color:#fff}
.overlay-redirect .ov-status{color:#98a1b0;font-size:14px}
.overlay-redirect.show{display:flex}
.spinner{width:52px;height:52px;border-radius:50%;border:5px solid rgba(255,199,44,.2);border-top-color:var(--gold);animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* ---------- footer ---------- */
.site-footer{background:var(--ink);color:#a6aebc;border-top:3px solid var(--gold)}
.f-main{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.1fr;gap:34px;padding:54px 0 40px}
@media(max-width:960px){.f-main{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.f-main{grid-template-columns:1fr}}
.f-brand p{font-size:13.5px;margin:14px 0;color:#8d95a5}
.f-col h4{color:#fff;font-size:14px;font-family:var(--ff-d);letter-spacing:.6px;margin-bottom:16px;text-transform:uppercase}
.f-col ul{list-style:none;padding:0;display:grid;gap:9px}
.f-col a{color:#a6aebc;font-size:13.5px}
.f-col a:hover{color:var(--gold)}
.f-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.f-badge{border:1.5px solid var(--line);border-radius:8px;padding:6px 12px;font-size:11.5px;font-weight:800;font-family:var(--ff-d);letter-spacing:.5px}
.f-badge.b18{border-color:var(--red);color:#ff8fa0}
.f-badge.brg{border-color:var(--green);color:#7fe0a8}
.f-legal{border-top:1px solid var(--line);padding:22px 0 26px;font-size:12px;color:#7d8695}
.f-legal .wrap{display:grid;gap:10px}
.f-legal p{line-height:1.65}
.f-copy{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:#98a1b0}
.f-copy b{color:var(--gold-3)}

/* ---------- floating bar (slot style) ---------- */
.floatbar{position:fixed;left:0;right:0;bottom:0;z-index:120;background:linear-gradient(180deg,rgba(11,14,20,.92),rgba(5,7,11,.98));border-top:2px solid var(--gold);box-shadow:0 -12px 34px rgba(0,0,0,.5);backdrop-filter:blur(6px)}
.floatbar .fb-in{max-width:1180px;margin:0 auto;padding:9px 16px;display:flex;align-items:center;gap:16px}
.fb-reel{display:flex;gap:6px;flex-shrink:0}
.reel{width:34px;height:34px;border-radius:8px;background:linear-gradient(180deg,#1d2432,#0d1118);border:1.5px solid #3a4356;overflow:hidden;position:relative}
.reel .col{position:absolute;left:0;right:0;top:0;animation:reelspin 2.6s linear infinite}
.reel .col span{display:block;height:34px;line-height:34px;text-align:center;font-size:17px}
.reel:nth-child(2) .col{animation-duration:2.1s;animation-delay:.2s}
.reel:nth-child(3) .col{animation-duration:3s;animation-delay:.45s}
@keyframes reelspin{0%{transform:translateY(0)}100%{transform:translateY(-170px)}}
.fb-txt{flex:1;min-width:0;color:#cfd5e0;font-family:var(--ff-d);font-weight:700;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fb-txt small{display:block;font-weight:500;font-size:11px;color:#8d95a5;letter-spacing:.4px}
.fb-btns{display:flex;gap:10px;flex-shrink:0;position:relative}
.fb-btn{font-family:var(--ff-d);font-weight:800;font-size:14px;letter-spacing:.4px;border-radius:999px;padding:12px 26px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:transform .15s,filter .15s;position:relative}
.fb-btn:hover{transform:translateY(-2px);text-decoration:none;filter:brightness(1.06)}
.fb-daftar{background:linear-gradient(180deg,#ffd75e,var(--gold) 40%,var(--gold-2));color:#3a2500;border:1.5px solid #9c6d00;box-shadow:0 5px 16px rgba(240,165,0,.4),inset 0 1px 0 #fff6d8;animation:pulseGold 2.2s ease-in-out infinite}
.fb-masuk{background:linear-gradient(180deg,#1fbe67,var(--green) 50%,var(--green-2));color:#fff;border:1.5px solid #06743a;box-shadow:0 5px 16px rgba(18,161,80,.4),inset 0 1px 0 #b6f2d0}
@keyframes pulseGold{0%,100%{box-shadow:0 5px 16px rgba(240,165,0,.4),inset 0 1px 0 #fff6d8}50%{box-shadow:0 5px 26px rgba(255,199,44,.75),inset 0 1px 0 #fff6d8}}
.coin{position:absolute;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 32% 28%,#ffefad,var(--gold) 55%,#8f6400);border:1px solid #7a5600;opacity:0;pointer-events:none;z-index:2}
.fb-btns .coin{animation:coinrise 2.8s ease-in infinite;left:15%}
.fb-btns .coin.c2{animation-delay:.9s;left:60%}
.fb-btns .coin.c3{animation-delay:1.7s;left:35%}
.fb-btns .coin.c4{animation-delay:2.2s;left:85%}
@keyframes coinrise{0%{opacity:0;transform:translateY(6px) rotateX(0)}12%{opacity:1}70%{opacity:1}100%{opacity:0;transform:translateY(-64px) rotateX(540deg)}}
@media(max-width:760px){
  .fb-reel,.fb-txt{display:none}
  .fb-btns{width:100%;gap:10px}
  .fb-btn{flex:1;justify-content:center;padding:13px 10px;font-size:14.5px}
  .floatbar .fb-in{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))}
}
@media (prefers-reduced-motion:reduce){
  .reel .col,.fb-btns .coin,.fb-daftar{animation:none}
  .coin{display:none}
}

/* ---------- reveal anim ---------- */
.rv{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease}
.rv.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* utilitas */
.center{text-align:center}
.f-field,.f-check,.btn,summary,.gloss-card,.faq summary{scroll-margin-bottom:110px}
a{scroll-margin-bottom:100px}
[id]{scroll-margin-top:90px}
.mt-2{margin-top:18px}.mt-3{margin-top:26px}.mb-2{margin-bottom:18px}
.flexwrap{display:flex;flex-wrap:wrap;gap:14px}
.pill{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #ece7da;border-radius:999px;padding:5px 13px;font-size:12.5px;color:var(--muted);font-weight:600}
