
:root {
  --bg: #06101f;
  --bg-deep: #08182d;
  --panel: rgba(11, 22, 40, 0.72);
  --panel-strong: rgba(13, 27, 47, 0.86);
  --line: rgba(255,255,255,0.10);
  --line-soft: rgba(255,255,255,0.06);
  --text: #d7dfeb;
  --muted: #9fb2ca;
  --heading: #f6f8fc;
  --accent: #81d0ff;
  --accent-2: #9f8dff;
  --accent-3: #7bf0dc;
  --shadow: 0 25px 80px rgba(0,0,0,0.32);
  --radius-xl: 28px;
  --radius-lg: 22px;
  --radius-md: 18px;
  --content: 1180px;
  --reading: 780px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 16% 18%, rgba(129,208,255,0.10), transparent 20%),
    radial-gradient(circle at 84% 9%, rgba(159,141,255,0.11), transparent 18%),
    radial-gradient(circle at 78% 62%, rgba(123,240,220,0.06), transparent 24%),
    linear-gradient(180deg, #06101f 0%, #08182d 50%, #061220 100%);
  min-height:100vh;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.35;
  background-image:
    radial-gradient(2px 2px at 12% 14%, rgba(255,255,255,.8) 0, transparent 100%),
    radial-gradient(1.4px 1.4px at 27% 61%, rgba(255,255,255,.65) 0, transparent 100%),
    radial-gradient(1.5px 1.5px at 45% 24%, rgba(255,255,255,.5) 0, transparent 100%),
    radial-gradient(2px 2px at 74% 30%, rgba(255,255,255,.7) 0, transparent 100%),
    radial-gradient(1.5px 1.5px at 88% 72%, rgba(255,255,255,.55) 0, transparent 100%),
    radial-gradient(1px 1px at 59% 82%, rgba(255,255,255,.4) 0, transparent 100%);
}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
img{display:block;max-width:100%}
.shell{width:min(var(--content), calc(100% - 32px)); margin:0 auto}
.reading-width{width:min(var(--reading), calc(100% - 32px)); margin:0 auto}
.site-header{
  position:sticky; top:0; z-index:30;
  backdrop-filter: blur(18px);
  background: rgba(4, 11, 20, 0.56);
  border-bottom:1px solid var(--line-soft);
}
.nav-wrap{display:flex; align-items:center; justify-content:space-between; gap:24px; padding:18px 0}
.brand-wrap{display:flex; flex-direction:column; gap:3px}
.brand{font-size:1.45rem; font-weight:800; letter-spacing:-.03em; color:var(--heading)}
.brand-note{font-size:.78rem; color:var(--muted); letter-spacing:.12em; text-transform:uppercase}
.nav{display:flex; flex-wrap:wrap; gap:22px}
.nav a{color:var(--text); font-weight:600}
.nav a.active{color:var(--heading)}
.site-main{padding:38px 0 68px}
.panel{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow);
  backdrop-filter: blur(16px);
}
.hero{
  overflow:hidden;
  display:grid;
  grid-template-columns: 1.3fr .9fr;
  min-height:520px;
  margin-bottom:26px;
}
.hero-copy{padding:42px 38px 38px}
.eyebrow{margin:0 0 14px; color:var(--accent); font-size:.78rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase}
.hero h1{margin:0 0 18px; color:var(--heading); font-size:clamp(2.4rem, 4.8vw, 4.8rem); line-height:.95; letter-spacing:-.05em; max-width:10.5ch}
.lede{font-size:1.08rem; max-width:58ch; color:var(--text)}
.hero-actions{display:flex; flex-wrap:wrap; gap:14px; margin-top:28px}
.btn{
  display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 18px;
  border-radius:999px; font-weight:700; border:1px solid transparent;
  transition:transform .18s ease, border-color .18s ease, background .18s ease, opacity .18s ease;
}
.btn:hover{text-decoration:none; transform:translateY(-1px)}
.btn-primary{background:linear-gradient(135deg, var(--accent-2), var(--accent)); color:#08111e}
.btn-secondary{background:rgba(255,255,255,.05); color:var(--heading); border-color:rgba(255,255,255,.12)}
.hero-feature{position:relative; min-height:100%}
.hero-feature img{width:100%; height:100%; object-fit:cover}
.hero-feature::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.35))}
.hero-overlay{
  position:absolute; left:22px; right:22px; bottom:22px; z-index:2; padding:18px 20px;
  background:rgba(6, 16, 31, .72); border:1px solid rgba(255,255,255,.10); border-radius:20px; backdrop-filter:blur(12px);
}
.hero-overlay .mini-label{margin:0 0 8px; font-size:.75rem; color:var(--muted); font-weight:800; letter-spacing:.12em; text-transform:uppercase}
.hero-overlay h2{margin:0 0 10px; color:var(--heading); font-size:1.32rem; line-height:1.1}
.section{padding:30px; margin-bottom:26px}
.section-head{display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:22px}
.section-head h2{margin:0 0 8px; color:var(--heading); font-size:2rem; letter-spacing:-.03em}
.section-head p{margin:0; color:var(--muted)}
.card-grid{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:20px}
.post-card{
  overflow:hidden; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08);
  border-radius:24px; transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.post-card:hover{transform:translateY(-3px); border-color:rgba(129,208,255,.35); box-shadow:0 18px 45px rgba(0,0,0,.22)}
.post-card a.card-link{display:block; color:inherit; text-decoration:none}
.card-media{aspect-ratio:16/9; overflow:hidden; position:relative}
.card-media img{width:100%; height:100%; object-fit:cover; transition:transform .35s ease}
.post-card:hover .card-media img{transform:scale(1.03)}
.card-body{padding:20px 22px 22px}
.tag{display:inline-block; margin-bottom:12px; padding:6px 10px; border-radius:999px; background:rgba(129,208,255,.10); color:var(--accent); font-size:.78rem; font-weight:800}
.post-card h3{margin:0 0 10px; color:var(--heading); font-size:1.46rem; line-height:1.12; letter-spacing:-.03em}
.post-card p{margin:0; color:var(--text)}
.split-note{display:grid; grid-template-columns:1.15fr .85fr; gap:18px; align-items:stretch}
.note-panel{padding:24px; border-radius:22px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08)}
.note-panel h3{margin:0 0 8px; color:var(--heading); font-size:1.38rem}
.note-list{margin:0; padding-left:18px; color:var(--text)}
.note-list li + li{margin-top:8px}
.site-footer{border-top:1px solid var(--line-soft); background:rgba(4, 10, 20, .58)}
.footer-wrap{display:flex; justify-content:space-between; gap:24px; padding:30px 0 42px}
.footer-wrap strong{color:var(--heading)}
.footer-wrap p{margin:8px 0 0; color:var(--muted); max-width:44ch}
.footer-links{display:flex; gap:18px; flex-wrap:wrap; align-items:flex-start}
.footer-links a{color:var(--text)}
.page-hero{overflow:hidden; margin-bottom:24px}
.page-hero-media{position:relative; aspect-ratio: 16 / 7; min-height:320px}
.page-hero-media img{width:100%; height:100%; object-fit:cover}
.page-hero-media::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.48))}
.page-hero-copy{position:absolute; left:30px; right:30px; bottom:28px; z-index:2; max-width:760px}
.page-hero-copy h1{margin:0 0 12px; color:var(--heading); font-size:clamp(2.1rem, 4vw, 4rem); line-height:.97; letter-spacing:-.045em}
.page-hero-copy p{margin:0; color:#edf2fa; font-size:1.04rem}
.page-panel{padding:34px}
.page-panel h2{margin:32px 0 10px; color:var(--heading); font-size:1.62rem; line-height:1.1; letter-spacing:-.03em}
.page-panel h2:first-child{margin-top:0}
.page-panel p{margin:0 0 16px}
.page-panel ul{margin:0 0 16px; padding-left:20px}
.page-panel li + li{margin-top:9px}
.meta-row{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:18px}
.meta-chip{padding:7px 12px; border-radius:999px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08); color:var(--muted); font-size:.84rem; font-weight:700}
.callout{padding:18px 20px; border-radius:18px; background:rgba(129,208,255,.08); border:1px solid rgba(129,208,255,.18); margin:24px 0}
.crumbs{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:14px; color:var(--muted); font-size:.9rem}
.crumbs a{color:var(--muted)}
.article-nav{display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; padding-top:12px; border-top:1px solid rgba(255,255,255,.08); margin-top:28px}
.info-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px}
.info-card{padding:20px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); border-radius:20px}
.info-card h3{margin:0 0 8px; color:var(--heading); font-size:1.18rem}
.contact-list{list-style:none; padding:0; margin:0}
.contact-list li + li{margin-top:12px}
.kicker{color:var(--muted); text-transform:uppercase; letter-spacing:.14em; font-size:.78rem; font-weight:800; margin-bottom:10px}
@media (max-width: 980px){
  .hero{grid-template-columns:1fr}
  .card-grid, .split-note, .info-grid{grid-template-columns:1fr}
  .hero-copy{padding:34px 26px 10px}
  .hero-feature{min-height:320px}
}
@media (max-width: 700px){
  .nav-wrap, .footer-wrap{flex-direction:column; align-items:flex-start}
  .nav{gap:16px}
  .site-main{padding-top:24px}
  .section, .page-panel{padding:22px}
  .page-hero-copy{left:18px; right:18px; bottom:18px}
  .page-hero-media{aspect-ratio: 16 / 10; min-height:260px}
}
