:root{
  --green:#34d27b;--green-deep:#1f9c57;--amber:#ffb13c;--bg:#0a0e12;
  --card:rgba(255,255,255,.04);--line:rgba(255,255,255,.09);
  --tx:#e8ecf1;--sub:#9aa3af;
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased}
html{scroll-behavior:smooth}
body{font-family:-apple-system,"PingFang SC","Hiragino Sans","Apple SD Gothic Neo","Segoe UI",system-ui,sans-serif;
  background:radial-gradient(1200px 700px at 18% -10%,#16241d 0,transparent 55%),
    radial-gradient(900px 600px at 100% 5%,#16202e 0,transparent 55%),var(--bg);
  background-attachment:fixed;color:var(--tx);line-height:1.6;min-height:100vh}
a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}

/* nav */
nav{display:flex;align-items:center;justify-content:space-between;padding:22px 0;gap:14px}
.brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:17px;text-decoration:none;color:var(--tx)}
.brand img{width:34px;height:34px;display:block}
.navlinks{display:flex;align-items:center;gap:26px}
.navlinks a{color:var(--sub);text-decoration:none;font-size:14px;transition:.15s}
.navlinks a:hover{color:var(--tx)}
.navlinks a[aria-current="page"]{color:var(--green)}
.navtoggle{display:none;background:none;border:0;color:var(--tx);cursor:pointer;padding:6px}
@media(max-width:640px){
  .navtoggle{display:block}
  .navlinks{position:absolute;top:64px;right:24px;left:24px;flex-direction:column;align-items:flex-start;
    gap:4px;background:#10161c;border:1px solid var(--line);border-radius:14px;padding:10px;
    box-shadow:0 22px 44px -16px rgba(0,0,0,.75);display:none;z-index:40}
  .navlinks.open{display:flex}
  .navlinks a{padding:9px 11px;width:100%;border-radius:8px}
  .navlinks a:hover{background:rgba(255,255,255,.06)}
}

/* hero */
.hero{text-align:center;padding:64px 0 44px}
.hero .bigico{width:96px;height:96px;margin:0 auto 28px;display:block;
  filter:drop-shadow(0 30px 60px rgba(0,0,0,.55))}
h1{font-size:clamp(34px,6vw,54px);font-weight:800;letter-spacing:-.03em;line-height:1.05}
.tag{font-size:clamp(16px,2.4vw,20px);color:#b6bec8;max-width:620px;margin:22px auto 0;line-height:1.55}
.eyebrow{display:inline-block;margin-bottom:20px;padding:7px 14px;border-radius:999px;
  font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--green);
  background:rgba(52,210,123,.1);border:1px solid rgba(52,210,123,.28)}

/* section heading */
.sec{padding:46px 0}
.sec-head{text-align:center;max-width:640px;margin:0 auto 38px}
.sec-head h2{font-size:clamp(26px,4vw,36px);font-weight:800;letter-spacing:-.02em}
.sec-head p{color:var(--sub);margin-top:12px;font-size:16px}

/* feature trio */
.feats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:760px){.feats{grid-template-columns:1fr}}
.feat{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px}
.feat .fi{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:21px;
  background:rgba(52,210,123,.12);margin-bottom:15px}
.feat h3{font-size:17px;font-weight:700;margin-bottom:8px}
.feat p{font-size:14px;color:var(--sub);line-height:1.6}

/* highlight band */
.band{text-align:center;background:linear-gradient(120deg,rgba(52,210,123,.08),transparent);
  border:1px solid rgba(52,210,123,.2);border-radius:18px;padding:38px 26px}
.band h2{font-size:clamp(22px,3vw,28px);font-weight:800;margin-bottom:12px}
.band p{color:#b6bec8;max-width:600px;margin:0 auto;font-size:16px}
.band b{color:var(--green)}

/* buttons */
.ctarow{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:34px}
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 22px;border-radius:14px;text-decoration:none;
  border:1px solid var(--line);background:var(--card);color:var(--tx);font-size:15px;font-weight:600;transition:.15s}
.btn:hover{background:rgba(255,255,255,.08);transform:translateY(-1px)}
.btn.primary{background:linear-gradient(150deg,rgba(52,210,123,.18),rgba(52,210,123,.05));border-color:rgba(52,210,123,.32)}

/* product grid */
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
@media(max-width:760px){.cards{grid-template-columns:1fr}}
.pcard{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);
  border-radius:18px;padding:24px;transition:.15s}
a.pcard:hover{background:rgba(255,255,255,.07);transform:translateY(-2px);border-color:rgba(52,210,123,.3)}
.pcard .top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.ptitle{display:flex;align-items:center;gap:12px;min-width:0}
.picon{width:40px;height:40px;border-radius:9px;flex:none;object-fit:cover}
.pcard h3{font-size:18px;font-weight:700}
.pcard .plat{font-size:12px;color:var(--sub);margin-top:2px}
.pcard p{font-size:14px;color:var(--sub);line-height:1.6;flex:1}
.pcard .more{margin-top:14px;font-size:13px;font-weight:600;color:var(--green)}
.badge{font-size:11px;font-weight:700;letter-spacing:.04em;padding:4px 9px;border-radius:999px;white-space:nowrap}
.badge.live{color:var(--green);background:rgba(52,210,123,.12);border:1px solid rgba(52,210,123,.3)}
.badge.beta{color:var(--amber);background:rgba(255,177,60,.12);border:1px solid rgba(255,177,60,.3)}
.badge.soon{color:var(--sub);background:rgba(255,255,255,.05);border:1px solid var(--line)}

/* team — single column, portrait photos */
.team{display:flex;flex-direction:column;gap:20px;max-width:720px;margin:0 auto}
.tcard{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px;
  display:flex;gap:28px;align-items:center}
@media(max-width:560px){.tcard{flex-direction:column;align-items:center;text-align:center;gap:18px}}
.tcard img{width:190px;height:238px;border-radius:16px;object-fit:cover;flex:none;border:1px solid var(--line)}
@media(max-width:560px){.tcard img{width:200px;height:250px}}
.tcard .name{font-size:20px;font-weight:700}
.tcard .role{font-size:14px;color:var(--green);font-weight:600;margin:3px 0 12px}
.tcard .bio{font-size:14px;color:var(--sub);line-height:1.65}

/* contact — live Google maps */
.maps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:820px){.maps{grid-template-columns:1fr;max-width:560px;margin:0 auto}}
.mapcard{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;
  transition:.15s}
.mapcard:hover{border-color:rgba(52,210,123,.3)}
.mapcard .head{display:flex;align-items:center;gap:10px;padding:16px 18px}
.mapcard .head .dot{width:9px;height:9px;border-radius:50%;background:var(--green);flex:none;
  box-shadow:0 0 0 5px rgba(52,210,123,.16)}
.mapcard .head h3{font-size:16px;font-weight:700;line-height:1.2}
.mapcard .head p{font-size:12px;color:var(--sub);margin-top:1px}
.mapcard iframe{width:100%;height:240px;border:0;display:block;background:#0f1419}
.contactmail{text-align:center;margin-top:34px;color:var(--sub);font-size:15px}
.contactmail a{color:var(--green);text-decoration:none}
.contactmail a:hover{text-decoration:underline}

/* footer */
footer{border-top:1px solid var(--line);margin-top:70px;padding:30px 0 56px;display:flex;
  justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;color:var(--sub);font-size:13px}
footer a{color:var(--sub);text-decoration:none;margin-left:18px}
footer a:hover{color:var(--tx)}
@media(max-width:480px){footer{justify-content:center;text-align:center}footer a{margin:0 9px}}
