/* === RAN-CHAMPION Shared Styles (Red-Black + BG + Hover Zoom) === */
/* Colors */
:root{
  --bg:#000000;
  --bg-soft:#1a0c0c;
  --card:#1c0d0d;
  --text:#f7f7f7;
  --muted:#d0a0a0;
  --brand:#e50914;
  --brand-2:#7a0000;
  --accent:#ff4444;
  --shadow: 0 12px 30px rgba(0,0,0,.55);
}

/* Reset */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Kanit",system-ui,-apple-system,Segoe UI,Roboto,Arial,"Noto Sans Thai",sans-serif;
  color:var(--text);
  background: url("../../images/bg_body.jpg") no-repeat center top fixed;
  background-size:cover;
  background-color: var(--bg);
}

.container{width:min(1100px,92vw);margin-inline:auto}

/* Header / Nav */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(0,0,0,.6);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{display:flex;align-items:center;gap:16px;padding:12px 0}
.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:800;letter-spacing:.4px}
.brand .logo{width:26px;height:26px;fill:var(--brand)}
.brand-ico{width:20px;height:20px;border-radius:4px;display:inline-block}
.menu{display:flex;gap:18px;margin-left:auto;align-items:center;flex-wrap:wrap}
.menu a{color:var(--muted);text-decoration:none;font-weight:700;display:flex;flex-direction:column;font-size:14px}
.menu a span{font-size:11px;opacity:.75}
.menu a:hover,.menu a.active{color:var(--text)}
.hamburger{display:none;background:transparent;border:0;width:42px;height:42px;padding:8px;border-radius:10px}
.hamburger span{display:block;height:2px;background:var(--text);margin:6px 0}

/* Hero */
.hero{position:relative;overflow:hidden;background: radial-gradient(900px 300px at 70% -10%, rgba(229,9,20,.2), transparent 70%)}
.hero__inner{display:grid;grid-template-columns:1fr;gap:20px;padding:46px 0 20px}
.hero__text h1{font-size:40px;margin:0 0 8px}
.lead{color:var(--muted);font-size:18px}
.badge{font-size:16px;font-weight:700;background:rgba(255,255,255,.08);padding:4px 10px;border-radius:999px;margin-left:6px}
.hero__wave{height:40px;background:linear-gradient(180deg, transparent, rgba(255,255,255,.04))}

/* Sections */
.section{padding:30px 0 70px}
.section__title{font-size:26px;margin:0 0 16px}
.section__title span{display:block;font-size:12px;color:var(--muted);margin-top:6px}

/* Cards / Grid */
.card{background:var(--card);border:1px solid rgba(255,255,255,.06);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{padding:18px}
.step h3{margin:6px 0 6px;font-size:18px}
.step__num{width:36px;height:36px;display:grid;place-items:center;font-weight:800;border-radius:10px;background:linear-gradient(180deg, var(--brand), var(--brand-2));box-shadow:var(--shadow)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

/* Boss cards */
.boss .boss__body{padding:14px}
.boss h3, .boss h2{margin:6px 0 10px}
.boss ul{list-style:none;padding:0;margin:0;color:#ffd7d7}
.boss li{margin:4px 0}

/* Notice / FAQ */
.notice{padding:18px}
.notice .warn{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.notice .warn svg{width:22px;height:22px;fill:#ffce31}
.notice .price{color:#ff5d5d;font-size:20px}
.faq{margin-top:14px;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 14px;background:var(--bg-soft)}
.faq summary{cursor:pointer;font-weight:700}
.faq p{color:var(--muted)}

/* Buttons */
.btn{border:1px solid rgba(255,255,255,.15);background:transparent;color:var(--text);padding:10px 14px;border-radius:12px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:8px;box-shadow:var(--shadow)}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:linear-gradient(90deg, var(--brand), var(--brand-2));border:0}

/* Images: Hover Zoom */
.shot{width:100%;height:auto;display:block;border-radius:12px;border:1px solid rgba(255,255,255,.07);transition:transform .25s ease, box-shadow .25s ease;transform-origin:center center;cursor:zoom-in}
.shot:hover{transform:scale(1.08);box-shadow:0 14px 40px rgba(0,0,0,.55)}

/* Footer */
.site-footer{border-top:1px solid rgba(255,255,255,.08);padding:28px 0 60px;background:linear-gradient(180deg,rgba(0,0,0,.25),transparent)}
.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}
.brand--footer{display:flex;align-items:center;gap:10px;font-weight:800}
.links{list-style:none;padding:0;margin:8px 0 0}
.links li{margin:6px 0}
.links a{color:var(--muted);text-decoration:none}
.links a:hover{color:var(--text)}

/* Responsive */
@media (max-width: 900px){
  .menu{position:fixed;inset:60px 0 auto 0;background:rgba(0,0,0,.95);padding:12px 20px;flex-direction:column;transform:translateY(-120%);transition:.2s;border-bottom:1px solid rgba(255,255,255,.08)}
  .menu.open{transform:translateY(0)}
  .hamburger{display:inline-grid;place-items:center;margin-left:auto}
  .grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr}
}
