/* Bamboo Labs LLC - shared styles for company + legal pages */
@font-face { font-family:'Orbitron'; src:url('../fonts/f0.woff2') format('woff2'); font-weight:400 900; font-style:normal; font-display:swap; }
@font-face { font-family:'Share Tech Mono'; src:url('../fonts/f1.woff2') format('woff2'); font-weight:400; font-style:normal; font-display:swap; }

:root {
  --bg:#050510; --bg2:#08081a; --accent:#00ff88; --accent-rgb:0,255,136;
  --accent-glow:rgba(0,255,136,.15); --cyan:#80ffcc; --yellow:#ffcc00;
  --text:#e8e8f0; --text2:#b8b8cc; --dim:#555570; --border:#1a1a30;
  --head:'Orbitron',sans-serif; --mono:'Share Tech Mono',monospace;
}

* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; }
body {
  margin:0; background:var(--bg); color:var(--text);
  font-family:var(--mono); line-height:1.7; overflow-x:hidden;
  background-image:radial-gradient(1200px 600px at 50% -10%, rgba(0,255,136,.06), transparent 70%);
}

.wrap { max-width:820px; margin:0 auto; padding:1.25rem 1.25rem 4rem; }

/* nav */
.nav {
  display:flex; flex-wrap:wrap; align-items:center; gap:.35rem 1.1rem;
  padding:1rem 0 1.25rem; border-bottom:1px solid var(--border); margin-bottom:2rem;
}
.nav .brand {
  font-family:var(--head); font-weight:700; letter-spacing:1px; font-size:1rem;
  color:#fff; margin-right:auto; display:flex; align-items:center; gap:.5rem;
}
.nav .brand .accent { color:var(--accent); }
.nav .brand .leaf { width:16px; height:16px; }
.nav a.link {
  color:var(--text2); text-decoration:none; font-size:.78rem; letter-spacing:.5px;
  text-transform:lowercase; transition:color .2s;
}
.nav a.link:hover, .nav a.link[aria-current="page"] { color:var(--accent); }

a { color:var(--accent); text-decoration:none; }
a:hover { text-decoration:underline; }

h1 {
  font-family:var(--head); font-size:1.7rem; line-height:1.2; letter-spacing:1px;
  color:#fff; margin:.5rem 0 .35rem;
}
h1 .accent { color:var(--accent); }
h2 {
  font-family:var(--head); font-size:1.05rem; letter-spacing:1px; color:#fff;
  margin:2.4rem 0 .6rem; padding-top:.2rem;
}
h3 { font-size:.95rem; color:var(--cyan); letter-spacing:.5px; margin:1.6rem 0 .4rem; }
p, li { color:var(--text2); font-size:.9rem; }
ul, ol { padding-left:1.3rem; }
li { margin:.35rem 0; }
strong { color:var(--text); }
.lead { color:var(--text); font-size:.95rem; }
.updated { color:var(--dim); font-size:.72rem; letter-spacing:1px; text-transform:uppercase; margin:0 0 1.5rem; }
.todo {
  display:inline-block; background:rgba(255,204,0,.1); border:1px solid rgba(255,204,0,.4);
  color:var(--yellow); font-size:.7rem; padding:.05rem .4rem; border-radius:3px; letter-spacing:.5px;
}
.callout {
  border:1px solid var(--border); border-left:3px solid var(--accent);
  background:var(--bg2); padding:.9rem 1.1rem; border-radius:6px; margin:1.2rem 0;
}
.callout p:last-child { margin-bottom:0; }
.callout p:first-child { margin-top:0; }

/* contact / info blocks */
.info { border:1px solid var(--border); background:var(--bg2); border-radius:8px; padding:1.2rem 1.3rem; margin:1.2rem 0; }
.info .row { margin:.55rem 0; }
.info .label { display:block; color:var(--dim); font-size:.68rem; letter-spacing:1.5px; text-transform:uppercase; margin-bottom:.1rem; }
.info .val { color:var(--text); font-size:.95rem; }

/* product cards on landing */
.hero { text-align:center; padding:1.5rem 0 1rem; }
.hero .tag { display:inline-block; color:var(--dim); font-size:.72rem; letter-spacing:2px; text-transform:uppercase; margin-bottom:.6rem; }
.hero p.desc { color:var(--text2); font-size:.95rem; max-width:640px; margin:.6rem auto 0; }
.grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:1rem; }
.card {
  display:block; border:1px solid var(--border); background:var(--bg2); border-radius:8px;
  padding:1rem 1.1rem; transition:border-color .2s, box-shadow .2s, transform .2s; color:inherit;
}
.card:hover { border-color:var(--accent); box-shadow:0 0 22px var(--accent-glow); transform:translateY(-2px); text-decoration:none; }
.card-head { display:flex; align-items:baseline; justify-content:space-between; gap:.75rem; }
.card-title { font-family:var(--head); font-size:.9rem; letter-spacing:1px; color:#fff; }
.card-url { font-size:.68rem; color:var(--accent); white-space:nowrap; opacity:.85; }
.card-desc { color:var(--text2); font-size:.82rem; line-height:1.55; margin:.5rem 0 .4rem; }
.card-arrow { color:var(--dim); font-size:.75rem; }
.card:hover .card-arrow { color:var(--accent); }
.card-arrow .live { color:var(--accent); }
.soon { color:var(--dim); }

/* footer */
footer {
  text-align:center; margin-top:3.5rem; padding-top:1.6rem; border-top:1px solid var(--border);
  color:var(--dim); font-size:.72rem; letter-spacing:.5px; line-height:1.9;
}
footer a { color:var(--accent); }
footer .flinks { margin:.4rem 0; }
footer .flinks a { color:var(--text2); margin:0 .5rem; }
footer .flinks a:hover { color:var(--accent); }
footer .prompt { color:var(--accent); }

@media (max-width:640px) {
  .grid { grid-template-columns:1fr; }
  h1 { font-size:1.4rem; }
  .wrap { padding:1rem 1rem 3rem; }
  .nav { gap:.3rem .8rem; }
}
