/* =========================
   GLOBAL
========================= */
:root{
  --bg-dark:#08121f;
  --bg-dark2:#0d1d33;
  --card:#ffffff;
  --text:#1f2d3d;
  --muted:#5b6b7c;
  --primary:#1f4c8f;
  --primary2:#2f7df6;
  --accent:#69b7ff;
  --border:#e5edf5;
  --radius:20px;
}

*{box-sizing:border-box;}

body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  background:#f4f7fb;
  color:var(--text);
  line-height:1.7;
}

.container{
  width:min(1150px, 92%);
  margin:auto;
}

/* =========================
   HEADER
========================= */
.site-header{
  background:#123c7a;
  color:#fff;
  padding:14px 0;
}

.nav-wrap{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.brand{
  color:#fff;
  font-weight:700;
  font-size:1.1rem;
}

.top-nav{
  display:flex;
  gap:18px;
}

.top-nav a{
  color:#fff;
  font-weight:600;
  font-size:0.9rem;
}

/* =========================
   HERO SECTION
========================= */
.hero-article{
  background:linear-gradient(135deg,#0a172a,#102542);
  color:#fff;
  padding:60px 0;
}

.hero-grid{
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:30px;
  align-items:center;
}

.hero-badge{
  background:rgba(255,255,255,0.1);
  padding:6px 12px;
  border-radius:20px;
  display:inline-block;
  margin-bottom:15px;
  font-size:0.85rem;
}

.hero-copy h1{
  font-size:2.8rem;
  margin:0 0 12px;
}

.hero-lead{
  color:#cbd8e6;
  margin-bottom:20px;
}

/* =========================
   BUTTONS
========================= */
.btn{
  padding:12px 18px;
  border-radius:10px;
  font-weight:700;
  display:inline-block;
}

.btn-primary{
  background:var(--primary2);
  color:#fff;
}

.btn-outline{
  border:1px solid #fff;
  color:#fff;
}

.hero-actions{
  display:flex;
  gap:12px;
  margin-bottom:15px;
}

/* =========================
   CODE CARD
========================= */
.hero-code-card{
  background:#0e1c31;
  border-radius:20px;
  overflow:hidden;
}

.window-bar{
  padding:10px;
  background:#162a45;
  color:#cbd8e6;
  font-size:0.9rem;
}

.editor-body pre{
  padding:20px;
  color:#e6f0ff;
  font-family:Consolas, monospace;
  font-size:0.95rem;
}

/* =========================
   STATS
========================= */
.stats-strip{
  background:#08121f;
  padding:30px 0;
}

.stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:15px;
}

.stat-card{
  background:#10223a;
  color:#fff;
  text-align:center;
  padding:20px;
  border-radius:15px;
}

.stat-number{
  font-size:1.8rem;
  font-weight:700;
}

/* =========================
   MAIN CONTENT
========================= */
.page-main{
  padding:40px 0;
}

.content-layout{
  display:grid;
  grid-template-columns:2fr 320px;
  gap:25px;
}

.article-card{
  background:#fff;
  border-radius:20px;
  padding:30px;
  box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

.article-card h2{
  margin-top:30px;
  color:#0f2747;
}

.article-card p{
  color:#4e6276;
}

/* =========================
   FEATURE GRID
========================= */
.feature-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
  margin:20px 0;
}

.feature-item{
  background:#f8fbff;
  border:1px solid var(--border);
  border-radius:15px;
  padding:15px;
}

/* =========================
   CTA PANEL
========================= */
.cta-panel{
  background:linear-gradient(135deg,#123c7a,#1f4c8f);
  color:#fff;
  padding:20px;
  border-radius:18px;
  margin:30px 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
}
.cta-panel h3{
  color:#ffffff;
  font-weight:700;
  margin-bottom:6px;
}

.cta-panel p{
  color: rgba(255,255,255,0.9);
  font-size: 1.02rem;
  line-height:1.6;
}
/* =========================
   TAG PILLS
========================= */
.pill-grid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:20px 0;
}

.pill{
  background:#eef5ff;
  padding:8px 12px;
  border-radius:20px;
  font-size:0.9rem;
}

/* =========================
   LANGUAGE CARDS
========================= */
.language-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:15px;
}

.lang-card{
  background:#f9fbff;
  border:1px solid var(--border);
  padding:15px;
  border-radius:15px;
}

/* =========================
   SIDEBAR
========================= */
.sidebar{
  position:sticky;
  top:20px;
}

.side-card{
  background:#fff;
  padding:20px;
  border-radius:15px;
  margin-bottom:15px;
  box-shadow:0 8px 20px rgba(0,0,0,0.08);
}

.side-card ul{
  list-style:none;
  padding:0;
}

.side-card li{
  margin-bottom:10px;
}

/* =========================
   BOOK PROMO
========================= */
.book-promo-pro{
  background:linear-gradient(135deg,#fffdf7,#fff5df);
  padding:25px;
  border-radius:20px;
  margin-top:30px;
}

.promo-badge{
  background:#ffe8a8;
  padding:5px 10px;
  border-radius:20px;
  font-size:0.8rem;
}

.promo-buttons{
  margin-top:15px;
  display:flex;
  gap:10px;
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width:900px){
  .hero-grid,
  .content-layout{
    grid-template-columns:1fr;
  }

  .stats-grid{
    grid-template-columns:1fr 1fr;
  }

  .language-cards{
    grid-template-columns:1fr;
  }
}