:root{
  --bg:#12081a; --surface:rgba(18,8,26,.88); --panel:#1f102c;
  --text:#fff; --muted:rgba(255,255,255,.72);
  --accent:#e056fd; --accent-2:#f9ca24; --line:rgba(255,255,255,.16);
  --max:1100px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; color:var(--text);
  font:16px/1.65 Arial, Helvetica, sans-serif;
  background:
    linear-gradient(160deg, rgba(18,8,26,.92), rgba(31,16,44,.78)),
    url("/img.avif") center/cover no-repeat fixed;
  min-height:100vh;
}
a{color:inherit; text-decoration:none}
img{max-width:100%; height:auto; display:block}
.container{width:min(100% - 2rem, var(--max)); margin:0 auto}
.site-header{
  position:sticky; top:0; z-index:20;
  backdrop-filter:blur(10px);
  background:rgba(18,8,26,.78);
  border-bottom:1px solid var(--line);
}
.nav{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.85rem 0}
.brand{font-weight:800; letter-spacing:.04em; font-size:1.15rem}
.brand span{color:var(--accent)}
.nav-links{display:flex; align-items:center; gap:1rem; flex-wrap:wrap; color:var(--muted); font-size:.95rem}
.nav-links a:hover{color:var(--text)}
.btn{
  display:inline-block; border:0; border-radius:999px;
  padding:.85rem 1.2rem; font-weight:700; cursor:pointer;
  color:#fff; background:linear-gradient(90deg,var(--accent),#be2edd);
  box-shadow:0 10px 24px rgba(224,86,253,.28);
}
.btn:hover{transform:translateY(-1px)}
.btn-sm{padding:.55rem .95rem; font-size:.9rem}
.btn-ghost{background:transparent; border:1px solid var(--line); box-shadow:none}
.hero{padding:4.5rem 0 3rem}
.hero-grid{display:grid; grid-template-columns:1.15fr .85fr; gap:2rem; align-items:center}
.eyebrow{color:var(--accent-2); text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; margin:0 0 .7rem}
.hero h1{font-size:clamp(2rem,5vw,3.4rem); line-height:1.08; margin:0 0 1rem; color:var(--accent-2)}
.lead{color:var(--muted); font-size:1.12rem; max-width:52ch; margin:0}
.hero-actions{display:flex; flex-wrap:wrap; gap:.8rem; margin:1.5rem 0 1rem}
.note{color:var(--muted); font-size:.92rem; max-width:52ch}
.hero-card,.panel,.card{
  background:rgba(0,0,0,.45); border:1px solid var(--line); border-radius:1.1rem; padding:1.25rem;
}
.hero-media{border-radius:1.1rem; overflow:hidden; border:1px solid var(--line); box-shadow:0 18px 50px rgba(0,0,0,.35)}
.hero-media img{width:100%; aspect-ratio:16/9; object-fit:cover}
.section{padding:2.5rem 0}
.section-title{font-size:clamp(1.5rem,3vw,2.1rem); margin:0 0 .5rem; color:var(--accent-2)}
.section-sub{color:var(--muted); margin:0 0 1.4rem; max-width:65ch}
.grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem}
.grid-2{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem}
.card h2,.card h3{margin:0 0 .5rem; font-size:1.15rem}
.card p{margin:0; color:var(--muted)}
.card a{color:var(--accent)}
.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:1rem}
.step{background:rgba(0,0,0,.4); border:1px solid var(--line); border-radius:1rem; padding:1.15rem}
.step-num{
  width:2rem; height:2rem; border-radius:50%; display:grid; place-items:center;
  background:linear-gradient(120deg,var(--accent),var(--accent-2)); font-weight:800; margin-bottom:.7rem; color:#12081a;
}
.prose,.page-hero .container{width:min(100% - 2rem, 760px); margin:0 auto}
.page-hero{padding:2.8rem 0 1rem}
.crumbs{color:var(--muted); font-size:.9rem; margin-bottom:.8rem}
.crumbs a{color:var(--accent)}
.page-hero h1{font-size:clamp(1.8rem,4vw,2.6rem); margin:0 0 .7rem; color:var(--accent-2)}
.toc{margin:1.2rem 0 0; padding:1rem 1.15rem; border:1px solid var(--line); border-radius:.8rem; background:rgba(0,0,0,.35)}
.toc strong{display:block; margin-bottom:.45rem}
.toc ol{margin:.2rem 0 0; padding-left:1.2rem; color:var(--muted)}
.toc a{color:var(--accent)}
.prose{padding:0 0 3rem}
.prose h2{margin:2rem 0 .7rem; color:var(--accent-2); font-size:1.35rem}
.prose h3{margin:1.4rem 0 .5rem; font-size:1.1rem}
.prose p,.prose li{color:var(--muted)}
.prose a{color:var(--accent); text-decoration:underline}
.prose ul,.prose ol{padding-left:1.2rem}
.reading-list{margin-top:2.5rem; padding-top:1.5rem; border-top:1px solid var(--line)}
.reading-list h2{margin-top:0}
.cta-band{
  margin:2rem 0 0; padding:1.4rem; border-radius:1rem; text-align:center;
  border:1px solid var(--line);
  background:linear-gradient(120deg, rgba(224,86,253,.18), rgba(249,202,36,.12));
}
.cta-band p{color:var(--muted); margin:.3rem 0 1rem}
.site-footer{border-top:1px solid var(--line); margin-top:2rem; padding:1.2rem 0 2rem; color:var(--muted); font-size:.9rem}
.footer-inner{display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap}
.footer-links{display:flex; gap:1rem; flex-wrap:wrap}
.footer-links a:hover{color:var(--text)}
.faq details{border:1px solid var(--line); border-radius:.8rem; background:rgba(0,0,0,.35); padding:1rem 1.1rem; margin-bottom:.7rem}
.faq summary{cursor:pointer; font-weight:700}
.faq p{color:var(--muted); margin:.7rem 0 0}
.section-label{font-size:.8rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); margin:0 0 1rem}
@media (max-width:900px){
  .hero-grid,.grid,.grid-2,.steps{grid-template-columns:1fr}
  .nav-links a:not(.btn){display:none}
  .hero{padding-top:2.5rem}
}
