
:root {
  --bg: #05080f;
  --bg2: #0a1220;
  --fg: #f3f6fb;
  --muted: #93a0b5;
  --line: rgba(255,255,255,.10);
  --gold: #c9a45a;
  --gold2: #e4c27a;
  --glass: rgba(16, 24, 38, .55);
  --glass2: rgba(255,255,255,.04);
  --shadow: 0 24px 80px rgba(0,0,0,.45);
  --radius: 22px;
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}
html[data-theme="light"] {
  --bg: #f4f1ea;
  --bg2: #ebe6db;
  --fg: #121821;
  --muted: #5c6778;
  --line: rgba(18,24,33,.12);
  --gold: #9a7428;
  --gold2: #b28932;
  --glass: rgba(255,255,255,.62);
  --glass2: rgba(255,255,255,.75);
  --shadow: 0 24px 60px rgba(40,30,10,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;
  background: radial-gradient(1000px 500px at 90% -10%, rgba(201,164,90,.18), transparent 50%),
              radial-gradient(800px 400px at 0% 20%, rgba(80,120,180,.12), transparent 45%),
              linear-gradient(180deg, var(--bg), var(--bg2) 40%, var(--bg));
  color:var(--fg); line-height:1.55; min-height:100vh; overflow-x:hidden;
}
a{color:var(--gold2); text-decoration:none}
a:hover{text-decoration:underline}
.orb{position:fixed; border-radius:50%; filter:blur(60px); z-index:0; pointer-events:none; opacity:.55}
.orb-a{width:340px;height:340px;background:rgba(201,164,90,.22); top:-80px; right:-60px}
.orb-b{width:280px;height:280px;background:rgba(70,110,180,.18); bottom:10%; left:-80px}
html[data-theme="light"] .orb-a{background:rgba(201,164,90,.28)}
html[data-theme="light"] .orb-b{background:rgba(90,130,190,.16)}

.glass, .glass-panel, .glass-btn{
  background: var(--glass);
  border:1px solid var(--line);
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
}
.nav{position:sticky; top:0; z-index:50; border-bottom:1px solid var(--line)}
.nav-inner{max-width:1180px; margin:0 auto; padding:.85rem 1.15rem; display:flex; align-items:center; gap:1rem}
.brand{display:flex; align-items:center; gap:.65rem; color:var(--fg); font-weight:750; letter-spacing:.06em; text-decoration:none}
.brand em{color:var(--gold); font-style:normal}
.brand-mark{width:36px;height:36px; object-fit:contain}
.brand-mark-light{display:none}
html[data-theme="light"] .brand-mark-dark{display:none}
html[data-theme="light"] .brand-mark-light{display:block}
.nav-links{margin-left:auto; display:flex; gap:1rem; align-items:center; font-size:.86rem; color:var(--muted)}
.nav-links a{color:inherit; text-decoration:none}
.nav-links a:hover{color:var(--fg)}
.nav-cta{padding:.45rem .8rem; border-radius:999px; border:1px solid var(--line); color:var(--fg)!important; background:var(--glass2)}
.nav-tools{display:flex; gap:.45rem; margin-left:.4rem}
.icon-btn{width:40px;height:40px;border-radius:12px;color:var(--fg);cursor:pointer;font-size:1rem}
.menu-btn{display:none}

main{position:relative; z-index:1; max-width:1180px; margin:0 auto; padding:0 1.15rem 3rem}

.hero{display:grid; gap:1.75rem; padding:2.2rem 0 1.5rem; align-items:center}
@media(min-width:960px){.hero{grid-template-columns:1.05fr .95fr; gap:2.4rem; padding:3rem 0 2rem}}
.hero-media{position:relative; border-radius:28px; overflow:hidden; min-height:280px; box-shadow:var(--shadow)}
.hero-video{width:100%; height:100%; object-fit:cover; display:block; min-height:280px; background:#000}
.hero-media-fade{position:absolute; inset:0; background:linear-gradient(120deg, rgba(5,8,15,.15), transparent 50%, rgba(5,8,15,.35))}
.hero-logo-float{position:absolute; right:6%; bottom:8%; width:min(38%,180px); filter:drop-shadow(0 12px 30px rgba(0,0,0,.45))}
.kicker{color:var(--gold); text-transform:uppercase; letter-spacing:.16em; font-size:.7rem; font-weight:700; margin:0 0 .8rem}
h1{font-size:clamp(1.7rem, 4.2vw, 2.85rem); line-height:1.12; margin:0 0 1rem; letter-spacing:-.03em; font-weight:760}
h1 .soft{color:var(--muted); font-weight:650}
.lede,.lead{color:var(--muted); font-size:1.02rem; max-width:36rem; margin:0 0 1.25rem}
.badges{display:flex; flex-wrap:wrap; gap:.45rem; margin:0 0 1.4rem}
.badges span{border:1px solid var(--line); background:var(--glass2); border-radius:999px; padding:.4rem .7rem; font-size:.7rem; letter-spacing:.02em}
.actions{display:flex; flex-wrap:wrap; gap:.7rem}
.btn{display:inline-flex; align-items:center; justify-content:center; padding:.85rem 1.2rem; border-radius:14px; font-weight:700; font-size:.94rem; text-decoration:none}
.btn-primary{background:linear-gradient(180deg,var(--gold2),var(--gold)); color:#14110a; border:1px solid transparent; box-shadow:0 10px 30px rgba(201,164,90,.28)}
.btn-primary:hover{filter:brightness(1.05); text-decoration:none}
.btn-ghost{color:var(--fg)}

.trust-strip{margin:1rem 0 0; border-radius:18px; padding:1rem 1.15rem; font-size:.9rem; color:var(--muted)}
.trust-strip strong{color:var(--fg)}

.section{padding:3.2rem 0 1rem}
.section-head{margin-bottom:1.35rem}
h2{font-size:clamp(1.35rem, 2.6vw, 1.9rem); margin:0 0 .5rem; letter-spacing:-.02em; font-weight:740}
.card-grid{display:grid; gap:1rem}
@media(min-width:800px){
  .card-grid.three{grid-template-columns:repeat(3,1fr)}
  .card-grid.two{grid-template-columns:1fr 1fr}
  .card-grid.four{grid-template-columns:1fr 1fr}
}
@media(min-width:1100px){
  .card-grid.four{grid-template-columns:repeat(4,1fr)}
}
.layers{display:grid; gap:1rem; margin-bottom:1.1rem}
@media(min-width:900px){
  .layers{grid-template-columns:1fr auto 1fr; align-items:stretch}
}
.into{display:flex; align-items:center; justify-content:center; color:var(--gold); font-weight:800; letter-spacing:.18em; font-size:.72rem; text-transform:uppercase}
.into span{border:1px solid var(--line); background:var(--glass2); border-radius:999px; padding:.55rem .9rem}
.card{border-radius:20px; padding:1.25rem 1.3rem; box-shadow:var(--shadow)}
.card .who{color:var(--gold); font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; font-weight:750; margin:0 0 .4rem}
.card h3{margin:0 0 .45rem; font-size:1.05rem}
.card p{margin:0; color:var(--muted); font-size:.92rem}
.card.step span{display:inline-block; color:var(--gold); font-weight:800; font-size:.8rem; letter-spacing:.12em; margin-bottom:.4rem}

.network-panel{border-radius:24px; padding:1.3rem; box-shadow:var(--shadow)}
.network-head{display:flex; gap:.9rem; align-items:center; margin-bottom:1rem}
.network-head h3{margin:0 0 .2rem; font-size:1.05rem}
.network-head p{margin:0; color:var(--muted); font-size:.88rem}
.chips{display:flex; flex-wrap:wrap; gap:.55rem}
.chips span{border:1px solid var(--line); background:var(--glass2); border-radius:999px; padding:.55rem .85rem; font-size:.78rem}

.split{display:grid; gap:1.5rem; align-items:center}
@media(min-width:900px){.split{grid-template-columns:1.05fr .95fr}}
.media-stack{display:grid; gap:1rem}
.media-frame{border-radius:24px; overflow:hidden; box-shadow:var(--shadow)}
.media-frame video,.media-frame img{display:block; width:100%; height:100%; object-fit:cover}
.media-frame.small{max-width:70%}
.proof-list{margin:.4rem 0 0; padding-left:1.15rem; color:var(--muted)}
.proof-list li{margin:.55rem 0}

.cinema-grid{display:grid; gap:1rem}
@media(min-width:800px){.cinema-grid{grid-template-columns:1.2fr 1fr 1fr}}
.cinema .media-frame{min-height:180px}
.cinema .media-frame video,.cinema .media-frame img{min-height:180px}

.table-wrap{border-radius:20px; overflow:hidden; box-shadow:var(--shadow)}
table{width:100%; border-collapse:collapse; font-size:.92rem}
th,td{text-align:left; padding:.85rem 1rem; border-bottom:1px solid var(--line)}
th{color:var(--muted); font-weight:560}
.demo-line{margin:1rem 0 0; color:var(--muted); font-size:.9rem}
code{font-size:.84em; color:var(--gold2)}

.footer{margin:2.5rem auto 0; max-width:1180px; border-radius:24px 24px 0 0; padding:1.6rem 1.25rem calc(1.8rem + var(--safe-bottom)); color:var(--muted); font-size:.88rem}
.footer-line{color:var(--fg); font-weight:650; margin:0 0 .65rem}
.fine{font-size:.78rem; margin-top:1rem; opacity:.9}

@media(max-width:860px){
  .menu-btn{display:inline-flex; align-items:center; justify-content:center}
  .nav-links{
    display:none; position:absolute; top:64px; left:12px; right:12px;
    flex-direction:column; align-items:stretch; padding:1rem;
    border-radius:18px; background:var(--glass); border:1px solid var(--line);
    backdrop-filter:blur(18px);
  }
  .nav-links.open{display:flex}
  .nav{position:sticky}
  .nav-inner{position:relative}
  .hero-logo-float{width:120px}
  .media-frame.small{max-width:100%}
}
