/* --------- Base & Theme --------- */
:root{
  --bg: #0b0c0f;
  --bg-soft:#111319;
  --text:#e8ebf2;
  --muted:#a5adbd;
  --primary:#0a84ff;
  --card:#111827;
  --stroke:#1f2633;
  --chip:#131a26;
  --shadow: 0 10px 30px rgba(0,0,0,0.35);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji","Segoe UI Emoji";
  color:var(--text);
  background: radial-gradient(1200px 800px at 75% -100px, rgba(10,132,255,0.15), transparent 60%), var(--bg);
  line-height:1.6;
}

img{max-width:100%;display:block}
a{color:var(--text);text-decoration:none}
.container{max-width:1100px;margin-inline:auto;padding:0 20px}

/* --------- Header --------- */
.site-header{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 20px;
  background:rgba(11,12,15,0.7);backdrop-filter:saturate(1.5) blur(10px);
  border-bottom:1px solid var(--stroke);
}
.brand{display:flex;align-items:center;gap:10px;font-weight:700}
.brand-logo{font-size:22px}
.brand-text{letter-spacing:.2px}

.nav .menu{display:flex;gap:18px;list-style:none;margin:0;padding:0;align-items:center}
.nav .btn{padding:.55rem .9rem;border-radius:14px;border:1px solid var(--stroke)}
.nav .btn-primary{background:var(--primary);color:white;border-color:transparent}
.nav-toggle{display:none;background:transparent;border:1px solid var(--stroke);border-radius:12px;padding:.4rem .6rem;color:var(--text)}

/* --------- Hero --------- */
.hero{padding:70px 0 40px;border-bottom:1px solid var(--stroke)}
.hero-inner{display:grid;grid-template-columns: 1.2fr .8fr;gap:40px;align-items:center}
.hero-title{font-size:clamp(28px,4vw,44px);margin:0 0 10px}
.hero-subtitle{color:var(--muted);margin:0 0 18px}
.hero-cta{display:flex;gap:12px;margin:18px 0 14px}
.btn{padding:.8rem 1.1rem;border:1px solid var(--stroke);border-radius:14px;display:inline-block}
.btn-primary{background:var(--primary);color:#fff;border-color:transparent}
.btn-ghost{background:transparent}
.hero-badges{list-style:none;margin:14px 0 0;padding:0;color:var(--muted);display:flex;gap:16px;flex-wrap:wrap}
.caption{color:var(--muted);font-size:.9rem;margin-top:10px}

/* Decorative robot card */
.hero-card{display:flex;flex-direction:column;align-items:center}
.robot-card{
  position:relative;width:260px;height:220px;background:var(--card);
  border:1px solid var(--stroke);border-radius:22px;padding:18px;box-shadow:var(--shadow);
  display:grid;place-items:center;
}
.robot-card .body{
  width:120px;height:120px;border-radius:16px;background:#0f172a;border:1px solid var(--stroke);
  position:relative;
}
.robot-card .lidar{
  width:90px;height:10px;background:#0a84ff;border-radius:10px;position:absolute;top:60px;left:50%;transform:translateX(-50%);
  box-shadow:0 0 20px rgba(10,132,255,.6);
}
.robot-card .wheel{width:18px;height:60px;border-radius:10px;background:#1f2937;position:absolute;top:110px}
.robot-card .wl{left:48px}
.robot-card .wr{right:48px}

/* --------- Sections --------- */
.section{padding:60px 0;border-bottom:1px solid var(--stroke)}
.section h2{margin-top:0;font-size:clamp(22px,3vw,32px)}

.chips{display:flex;gap:10px;flex-wrap:wrap}
.chip{background:var(--chip);border:1px solid var(--stroke);padding:.5rem .75rem;border-radius:999px;color:#cdd6e5}

.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.card{
  background:var(--card);border:1px solid var(--stroke);border-radius:18px;padding:18px;box-shadow:var(--shadow);
}
.card h3{margin:0 0 8px}
.card .meta{list-style:none;padding:0;margin:10px 0 0;color:var(--muted);display:flex;gap:14px;flex-wrap:wrap}

.timeline{position:relative;padding-left:20px}
.timeline::before{content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:var(--stroke)}
.tl-item{position:relative;margin:10px 0 0 0;padding-left:16px}
.tl-dot{position:absolute;left:-1px;top:.35rem;width:10px;height:10px;border-radius:50%;background:var(--primary)}

.edu{list-style:disc;margin-left:18px}

.links{display:flex;gap:12px;flex-wrap:wrap}
.link{padding:.6rem .8rem;border:1px dashed var(--stroke);border-radius:12px;color:var(--muted)}

.contact-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.contact{display:flex;gap:12px;align-items:center}
.contact .icon{font-size:22px}

.site-footer{padding:30px 0}
.footer-inner{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--stroke);padding-top:20px}
.back-to-top{opacity:.9}

/* --------- Small screens --------- */
@media (max-width: 880px){
  .hero-inner{grid-template-columns:1fr}
  .grid{grid-template-columns:1fr}
  .contact-cards{grid-template-columns:1fr}
  .nav .menu{display:none;position:absolute;right:20px;top:60px;flex-direction:column;background:var(--bg-soft);border:1px solid var(--stroke);border-radius:16px;padding:12px}
  .nav-toggle{display:inline-block}
}

/* --------- Light theme (auto) --------- */
@media (prefers-color-scheme: light){
  :root{
    --bg:#f7f8fb; --bg-soft:#ffffff; --text:#0b1220; --muted:#384152; --primary:#0a84ff;
    --card:#ffffff; --stroke:#e6e9f2; --chip:#eef1f8; --shadow: 0 10px 30px rgba(22,34,77,.08);
  }
  body{background: radial-gradient(1200px 800px at 75% -100px, rgba(10,132,255,0.12), transparent 60%), var(--bg);}
}

/* --------- Manual theme override (data-theme attr) --------- */
:root[data-theme="light"]{
  --bg:#f7f8fb; --bg-soft:#ffffff; --text:#0b1220; --muted:#384152; --primary:#0a84ff;
  --card:#ffffff; --stroke:#e6e9f2; --chip:#eef1f8; --shadow: 0 10px 30px rgba(22,34,77,.08);
}
:root[data-theme="dark"]{
  --bg: #0b0c0f; --bg-soft:#111319; --text:#e8ebf2; --muted:#a5adbd; --primary:#0a84ff;
  --card:#111827; --stroke:#1f2633; --chip:#131a26; --shadow: 0 10px 30px rgba(0,0,0,0.35);
}
