:root{
  --bg:#0b0f1a;
  --ink:#e6f0ff;
  --muted:#9bb3ff;
  --primary:#7cf0ff;
  --accent:#ff4ecd;
  --glass:rgba(14,20,35,.55);
  --border:rgba(124,240,255,.25);
  --shadow:0 10px 30px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.04);
  --radius:16px;
  --topbar-h:64px;
}
*{box-sizing:border-box}
html,body{height:100%}
html{scroll-behavior:smooth}
body{
  margin:0; overflow-x:hidden;
  font-family:"Outfit",system-ui,-apple-system, Segoe UI, Roboto, Inter, Arial, sans-serif;
  color:var(--ink);
  background: var(--bg) fixed;
}

.bg{
  position:fixed; inset:0; z-index:-2;
  background:url('https://u.cubeupload.com/hbe/otcbackground.png') center/cover no-repeat fixed;
  filter:saturate(1.05) contrast(1.05) brightness(.75);
}
.overlay{
  position:fixed; inset:0; z-index:-1;
  background: radial-gradient(1200px 800px at 15% 20%, rgba(124,240,255,.18), transparent 60%),
              radial-gradient(900px 700px at 85% 10%, rgba(255,78,205,.12), transparent 55%),
              linear-gradient(180deg, rgba(6,10,18,.65), rgba(6,10,18,.85));
  backdrop-filter: blur(2px);
}

/* ===== Sticky Top Navigation ===== */
.topbar{
  position:sticky; top:0; z-index:1000;
  height:var(--topbar-h);
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg, rgba(6,10,18,.75), rgba(6,10,18,.35));
  border-bottom:1px solid rgba(124,240,255,.18);
  backdrop-filter: blur(8px) saturate(120%);
  box-shadow: 0 6px 24px rgba(0,0,0,.25);
}
.topbar-inner{
  max-width:980px; width:100%;
  padding:0 clamp(16px, 4vw, 40px);
  display:flex; align-items:center; gap:14px; justify-content:space-between;
}
.brand{display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--ink);}
.logo{
  width:36px; height:36px; display:flex; align-items:center; justify-content:center;
  border-radius:10px; background: linear-gradient(135deg, var(--primary), var(--accent));
  box-shadow:var(--shadow); font-size:18px; font-weight:800; color:#06101a;
}
.brand .wordmark{font-weight:800; letter-spacing:.4px; font-size:18px}
.brand .wordmark em{color:var(--primary); font-style:normal}

.desktop-nav{display:flex; align-items:center; gap:8px}
.nav-link{
  color:var(--muted); text-decoration:none; font-weight:700; opacity:.95;
  padding:10px 12px; border-radius:10px; border:1px solid transparent;
  position:relative; transition:color .2s ease, background .2s ease, border-color .2s ease;
}
.nav-link:hover{color:var(--ink); background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.1)}
.nav-link.active{color:#06101a; background:linear-gradient(135deg, var(--primary), var(--accent)); border-color:rgba(255,255,255,.25)}
.nav-sep{opacity:.4; margin:0 6px}

/* Hamburger for small screens */
.menu-btn{
  display:none; appearance:none; background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12); color:var(--ink);
  padding:8px 10px; border-radius:10px; cursor:pointer; font-weight:700;
}
.menu-btn .bars{display:inline-block; width:18px; height:12px; position:relative}
.menu-btn .bars::before, .menu-btn .bars::after, .menu-btn .bar{
  content:""; position:absolute; left:0; right:0; height:2px; background:currentColor; border-radius:2px;
}
.menu-btn .bar{top:5px}
.menu-btn .bars::before{top:0}
.menu-btn .bars::after{bottom:0}

/* Mobile drawer */
.mobile-nav{
  position:fixed; top:var(--topbar-h); left:0; right:0;
  background:linear-gradient(180deg, rgba(6,10,18,.95), rgba(6,10,18,.75));
  border-bottom:1px solid rgba(124,240,255,.18);
  backdrop-filter: blur(8px);
  transform:translateY(-8px); opacity:0; pointer-events:none;
  transition:.2s ease; z-index:900;
}
.mobile-nav.open{transform:translateY(0); opacity:1; pointer-events:auto}
.mobile-nav ul{list-style:none; margin:0; padding:10px 16px; display:grid; gap:8px}
.mobile-nav a{display:block; padding:12px 12px; border-radius:12px; text-decoration:none; color:var(--ink); background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1)}
.mobile-nav a:hover{background:rgba(255,255,255,.08)}

@media(max-width:920px){
  .desktop-nav{display:none}
  .menu-btn{display:inline-flex; align-items:center; gap:8px}
}

/* ===== Page sections ===== */
main{min-height:calc(100svh - 160px); padding:28px 18px 64px; display:grid; gap:36px;}
.hero{
  max-width:980px; width:100%; margin:0 auto;
  background:var(--glass); border:1px solid var(--border);
  border-radius:calc(var(--radius) + 8px); box-shadow:var(--shadow);
  padding: clamp(24px, 6vw, 52px);
  backdrop-filter: blur(6px) saturate(120%);
}
.eyebrow{display:inline-flex; gap:8px; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--muted);}
.eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--primary); box-shadow:0 0 16px var(--primary)}
h2.title{margin:.4rem 0 1rem; font-size: clamp(28px, 6vw, 58px); line-height:1.05}
p.lede{margin:0 0 1.2rem; font-size: clamp(15px, 2.2vw, 18px); color:#d3defa; max-width:70ch}
.cta-row{display:flex; flex-wrap:wrap; gap:12px; margin-top:20px}
.btn{
  --grad: linear-gradient(135deg, var(--primary), var(--accent));
  display:inline-flex; align-items:center; gap:10px;
  padding:12px 18px; border-radius:14px; font-weight:700; text-decoration:none; color:#06101a;
  background:var(--grad); border:1px solid rgba(255,255,255,.25); box-shadow: var(--shadow);
}
.btn.secondary{background:rgba(255,255,255,.06); color:var(--ink); border:1px solid rgba(255,255,255,.18);}
.btn.secondary:hover{background:rgba(255,255,255,.1)}
.btn:hover{transform:translateY(-1px)}

.grid{display:grid; gap:16px; margin-top:28px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));}
.card{padding:16px; border-radius:16px; background:rgba(12,16,28,.65); border:1px solid rgba(124,240,255,.16); color:#cfe4ff;}
.card h3{margin:.3rem 0 .4rem; font-size:18px}
.card p{margin:0; font-size:14px; color:#bcd0f7}

.section-divider{max-width:980px; width:100%; margin:0 auto; height:1px; background:linear-gradient(90deg, transparent, rgba(124,240,255,.25), transparent); filter:blur(.2px); opacity:.7;}

/* Feed (featured + list) */
.feed{
  max-width:980px; width:100%; margin:0 auto;
  background:var(--glass); border:1px solid var(--border);
  border-radius:calc(var(--radius) + 8px); box-shadow:var(--shadow);
  padding: clamp(18px, 4vw, 32px);
}
.feed .title{font-size:32px}
.featured{padding:18px; border-radius:16px; background:rgba(12,16,28,.65); border:1px solid rgba(124,240,255,.18); margin-bottom:16px;}
.featured a{font-size:22px; font-weight:700; text-decoration:none; color:var(--ink);}
.featured a:hover{color:var(--primary)}
.featured .meta{font-size:12px; color:#9fb2e6; margin-top:6px}
.featured .excerpt{font-size:14px; color:#cfe4ff; margin-top:8px}
.feed-list{list-style:none; margin:0; padding:0; display:grid; gap:10px; grid-template-columns:1fr 1fr;}
@media(max-width:760px){.feed-list{grid-template-columns:1fr;}}
.feed-list li{padding:10px 14px; border-radius:12px; background:rgba(12,16,28,.65); border:1px solid rgba(124,240,255,.14);}
.feed-list a{color:var(--muted); text-decoration:none; font-weight:600;}
.feed-list a:hover{color:var(--accent)}
.feed-list .meta{font-size:12px; color:#8fa2cc; margin-top:4px}
.feed-actions{text-align:right; margin-top:12px}
.feed-actions a{color:var(--muted); text-decoration:none; font-weight:600}
.feed-actions a:hover{color:var(--accent)}

/* --- RSS/WP highlight --- */
.featured.is-new{
  border-color: rgba(124,240,255,.6);
  animation: newPulse 1.4s ease-in-out 0s 2;
}
@keyframes newPulse{
  0%   { box-shadow: 0 0 0 0 rgba(124,240,255,.35); }
  100% { box-shadow: 0 0 0 24px rgba(124,240,255,0); }
}
.new-chip{
  display:inline-flex; align-items:center; gap:6px;
  padding:4px 8px; margin-bottom:6px; border-radius:999px;
  font-size:11px; font-weight:800; letter-spacing:.08em;
  color:#06101a;
  background:linear-gradient(135deg, var(--primary), var(--accent));
  box-shadow:0 2px 10px rgba(0,0,0,.25);
}
.feed-list .post-dot{
  display:inline-block; width:6px; height:6px; border-radius:50%;
  background:var(--primary); box-shadow:0 0 10px var(--primary);
  margin-right:8px; transform:translateY(-1px);
}

/* Compact uptime strip */
.uptime-strip{
  max-width:980px; margin:0 auto 20px; padding:10px 14px;
  border-radius:calc(var(--radius) + 6px);
  background:var(--glass); border:1px solid var(--border);
  box-shadow:var(--shadow); font-size:13px;
  display:flex; flex-wrap:wrap; gap:10px; justify-content:center;
}
.uptime-pill{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px;
  font-weight:600; white-space:nowrap;
  border:1px solid rgba(124,240,255,.2); background:rgba(12,16,28,.6);
}
.uptime-pill.up{color:#3ee47a; border-color:rgba(62,228,122,.3); background:rgba(62,228,122,.08);}
.uptime-pill.down{color:#ff6b6b; border-color:rgba(255,107,107,.3); background:rgba(255,107,107,.08);}
.uptime-pill .dot{width:8px; height:8px; border-radius:999px; background:currentColor; box-shadow:0 0 8px currentColor;}
.uptime-pill .ms{color:#8fa2cc; font-weight:400; font-size:12px}

/* Footer */
footer{
  padding:26px clamp(16px, 4vw, 40px) 40px;
  color:#b6c7ef; font-size:14px;
  border-top:1px solid rgba(124,240,255,.14);
  background:linear-gradient(0deg, rgba(6,10,18,.9), rgba(6,10,18,.6));
}
footer .foot-row{
  max-width:980px; width:100%; margin:0 auto;
  display:grid;
  grid-template-columns: 1fr auto 1fr;
  align-items:center; gap:14px;
}
footer .foot-left{justify-self:start}
footer .foot-center{justify-self:center; text-align:center}
footer .foot-right{justify-self:end; text-align:right}
footer .links a, footer .links a:visited{color:var(--muted); text-decoration:none; margin-left:14px}
footer .links a:hover{color:var(--ink)}
footer .datetime{
  font-size:14px; color:var(--primary); letter-spacing:.04em; font-variant-numeric: tabular-nums; white-space:nowrap;
  text-shadow: 0 0 6px rgba(124,240,255,.8), 0 0 16px rgba(124,240,255,.45), 0 0 28px rgba(124,240,255,.25);
  border:1px solid rgba(124,240,255,.25); padding:6px 10px; border-radius:999px; background:rgba(124,240,255,.06);
  box-shadow: inset 0 0 12px rgba(124,240,255,.08), 0 8px 24px rgba(0,0,0,.25);
  display:inline-flex; align-items:center; gap:8px;
}

/* Respect reduced-motion users */
@media (prefers-reduced-motion: reduce){
  * { animation: none !important; transition: none !important; }
  .btn:hover{ transform:none; }
}

@media (max-width: 680px){
  footer .foot-row{grid-template-columns: 1fr; gap:10px;}
  footer .foot-left, footer .foot-center, footer .foot-right{justify-self:center; text-align:center;}
}

