
:root{--p:#064e3b;--a:#14b8a6;--bg:#f0fdfa;--bga:#ecfdf5;--t:#022c22;--m:#475569;--cb:#ffffff;--brd:#d1fae5;--fh:'JetBrains Mono';--fb:'IBM Plex Sans';}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--fb),sans-serif;background:var(--bg);color:var(--t);line-height:1.7;font-size:15px;}
a{color:inherit;text-decoration:none;}
.mono{font-family:var(--fh),monospace;}
header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--brd);padding:0 5%;}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:60px;max-width:1180px;margin:0 auto;}
.nav-logo{font-family:var(--fh),monospace;font-weight:800;font-size:1.1rem;color:var(--p);letter-spacing:-.5px;}
.nav-logo::before{content:"$ ";color:var(--a);opacity:.6;}
.nav-links{display:flex;align-items:center;gap:22px;list-style:none;}
.nav-links a{font-size:.83rem;font-weight:500;color:var(--t);opacity:.7;}
.nav-links a:hover{opacity:1;color:var(--p);}
.nav-links a.cta{background:var(--p);color:#fff!important;padding:8px 18px;border-radius:4px;font-family:var(--fh);font-weight:700;font-size:.78rem;opacity:1;}
.burger{display:none;flex-direction:column;gap:5px;padding:8px;background:none;border:none;cursor:pointer;}
.burger span{display:block;width:22px;height:2px;background:var(--t);transition:.3s;}
.burger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.burger.active span:nth-child(2){opacity:0;}
.burger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}
.mob-nav{display:none;position:fixed;top:60px;left:0;right:0;background:#fff;border-bottom:1px solid var(--brd);z-index:99;padding:16px 5%;transform:translateY(-6px);opacity:0;transition:.3s;pointer-events:none;}
.mob-nav.open{transform:translateY(0);opacity:1;pointer-events:all;}
.mob-nav a{display:block;padding:11px 0;font-size:.95rem;border-bottom:1px solid var(--brd);}
.mob-nav a:last-child{border:none;color:var(--p);font-weight:700;}

.hero{padding:60px 5%;background:var(--bg);}
.hero-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.hero-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--fh),monospace;font-size:.75rem;color:var(--p);background:var(--brd);padding:5px 12px;border-radius:4px;margin-bottom:18px;}
.hero-tag::before{content:"●";color:var(--a);}
.hero h1{font-family:var(--fh),monospace;font-weight:800;font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.15;color:var(--t);margin-bottom:18px;letter-spacing:-1.5px;}
.hero h1 em{font-style:normal;color:var(--p);}
.hero-desc{color:var(--m);max-width:480px;margin-bottom:28px;font-size:1rem;}
.hero-desc strong{color:var(--t);}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;border-radius:6px;font-family:var(--fh);font-weight:700;font-size:.85rem;cursor:pointer;transition:.2s;border:none;}
.btn-primary{background:var(--p);color:#fff;}
.btn-primary:hover{background:#053926;transform:translateY(-1px);}
.btn-out{background:transparent;border:2px solid var(--p);color:var(--p);}
.btn-out:hover{background:var(--p);color:#fff;}

/* Terminal code block visual */
.code-box{background:var(--t);border-radius:10px;padding:0;overflow:hidden;box-shadow:0 12px 36px rgba(6,78,59,.2);}
.code-head{background:rgba(255,255,255,.05);padding:10px 16px;display:flex;align-items:center;gap:6px;border-bottom:1px solid rgba(255,255,255,.06);}
.code-dot{width:10px;height:10px;border-radius:50%;background:#ef4444;}
.code-dot.y{background:#f59e0b;}
.code-dot.g{background:#10b981;}
.code-title{font-family:var(--fh),monospace;color:rgba(255,255,255,.4);font-size:.72rem;margin-left:12px;}
.code-body{padding:20px;font-family:var(--fh),monospace;font-size:.78rem;line-height:1.9;color:rgba(255,255,255,.85);}
.cl-key{color:var(--a);}
.cl-str{color:#fbbf24;}
.cl-com{color:rgba(255,255,255,.4);}
.cl-fn{color:#67e8f9;}

/* Specs section */
.specs{padding:64px 5%;background:#fff;}
.specs-inner{max-width:1180px;margin:0 auto;}
.h2{font-family:var(--fh),monospace;font-weight:800;font-size:clamp(1.5rem,2.6vw,2rem);color:var(--t);margin-bottom:8px;letter-spacing:-1px;}
.h2::before{content:"# ";color:var(--a);}
.sub2{color:var(--m);margin-bottom:36px;font-size:.95rem;}
.spec-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;}
.spec{background:var(--bga);border:1px solid var(--brd);border-radius:10px;padding:20px;transition:.2s;}
.spec:hover{border-color:var(--a);transform:translateY(-2px);}
.spec-key{font-family:var(--fh),monospace;font-size:.7rem;color:var(--a);text-transform:uppercase;letter-spacing:1px;margin-bottom:6px;}
.spec-val{font-family:var(--fh),monospace;font-weight:700;font-size:1.05rem;color:var(--t);margin-bottom:6px;}
.spec-desc{font-size:.83rem;color:var(--m);line-height:1.6;}

/* Comparison table */
.compare{padding:64px 5%;background:var(--bga);}
.compare-inner{max-width:1180px;margin:0 auto;}
.tbl-wrap{overflow-x:auto;margin-top:28px;}
table.compare-tbl{width:100%;border-collapse:collapse;font-size:.9rem;background:#fff;border:1px solid var(--brd);border-radius:10px;overflow:hidden;}
.compare-tbl th{background:var(--p);color:#fff;padding:14px 16px;text-align:left;font-family:var(--fh);font-weight:700;font-size:.82rem;}
.compare-tbl td{padding:14px 16px;border-top:1px solid var(--brd);color:var(--m);}
.compare-tbl td.tname{font-family:var(--fh),monospace;font-weight:700;color:var(--t);}
.compare-tbl tr:hover{background:var(--bg);}
.tag-ok{display:inline-block;background:#dcfce7;color:#15803d;padding:2px 10px;border-radius:50px;font-size:.75rem;font-weight:600;}
.tag-fast{background:#fef3c7;color:#92400e;}

/* Platforms */
.dl{padding:64px 5%;background:var(--p);color:#fff;}
.dl .h2{color:#fff;}
.dl .h2::before{color:var(--a);}
.dl .sub2{color:rgba(255,255,255,.65);}
.plat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;}
.plat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:18px 12px;text-align:center;transition:.2s;cursor:pointer;}
.plat:hover{background:rgba(255,255,255,.14);}
.plat-ico{font-size:1.6rem;}
.plat-n{font-family:var(--fh),monospace;font-weight:700;font-size:.82rem;color:#fff;margin-top:6px;letter-spacing:-.3px;}
.plat-s{font-size:.7rem;color:rgba(255,255,255,.5);margin-top:2px;}

/* CTA */
.cta-b{padding:60px 5%;background:linear-gradient(135deg,var(--p),#0c4a3e);color:#fff;text-align:center;}
.cta-b h2{font-family:var(--fh),monospace;font-weight:800;font-size:clamp(1.6rem,3vw,2.4rem);margin-bottom:12px;color:#fff;}
.cta-b p{color:rgba(255,255,255,.75);max-width:440px;margin:0 auto 26px;}
.btn-white{background:#fff;color:var(--p);padding:13px 36px;border-radius:6px;font-family:var(--fh);font-weight:700;font-size:.9rem;display:inline-block;transition:.2s;}
.btn-white:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.18);}

/* FAQ */
.faq{padding:64px 5%;background:#fff;}
.faq-inner{max-width:780px;margin:0 auto;}
.faq-list{margin-top:24px;}
.faq-item{border:1px solid var(--brd);border-radius:8px;margin-bottom:10px;background:var(--bga);overflow:hidden;}
.faq-q{padding:15px 18px;font-family:var(--fh),monospace;font-weight:700;font-size:.88rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:var(--t);}
.faq-q::before{content:"$ ";color:var(--a);font-weight:400;}
.faq-q::after{content:"+";font-size:1.1rem;color:var(--p);}
.faq-item.open .faq-q::after{content:"–";}
.faq-a{padding:0 18px;max-height:0;overflow:hidden;transition:max-height .4s,padding .2s;font-size:.88rem;color:var(--m);line-height:1.75;}
.faq-item.open .faq-a{max-height:240px;padding:0 18px 14px;}

/* Footer */
footer{background:var(--t);color:rgba(255,255,255,.65);padding:36px 5% 22px;}
.foot-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px;margin-bottom:24px;}
.foot-logo{font-family:var(--fh),monospace;font-weight:800;color:var(--a);font-size:1.05rem;}
.foot-tag{font-size:.83rem;margin-top:6px;color:rgba(255,255,255,.4);}
.foot-col h4{font-family:var(--fh);font-size:.72rem;text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,.5);margin-bottom:10px;}
.foot-col a{display:block;font-size:.82rem;padding:3px 0;color:rgba(255,255,255,.6);}
.foot-col a:hover{color:#fff;}
.foot-bot{border-top:1px solid rgba(255,255,255,.08);padding-top:16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.78rem;color:rgba(255,255,255,.35);}

.reveal,.reveal-up{opacity:0;transition:opacity .6s,transform .6s;}
.reveal{transform:translateX(-20px);}
.reveal:nth-child(even){transform:translateX(20px);}
.reveal-up{transform:translateY(20px);}
.reveal.visible,.reveal-up.visible{opacity:1;transform:none;}

@media(max-width:900px){
  .hero-inner{grid-template-columns:1fr;}
  .code-box{order:-1;}
  .foot-inner{grid-template-columns:1fr 1fr;gap:24px;}
}
@media(max-width:640px){
  .nav-links{display:none;}
  .burger{display:flex;}
  .mob-nav{display:block;}
  .spec-grid,.plat-grid{grid-template-columns:1fr 1fr;}
  .foot-inner{grid-template-columns:1fr;}
  .hero h1{font-size:2rem;}
}
