:root{
  --bg:#ffffff;
  --panel:#f6f8fa;
  --text:#0f172a;
  --muted:#475569;
  --line:#e2e8f0;

  --accent:#14b8a6;      /* teal */
  --accentDark:#0f9488;

  --radius:16px;
  --shadow: 0 12px 30px rgba(2,6,23,.10);
}

*{box-sizing:border-box}
html,body{
  margin:0;padding:0;
  background:var(--bg);
  color:var(--text);
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
a{color:inherit;text-decoration:none}

main{max-width:1100px;margin:0 auto;padding:22px 18px 60px}

.topbar{
  max-width:1100px;margin:0 auto;
  padding:16px 18px;
  display:flex;align-items:center;justify-content:space-between;
  position:sticky;top:0;z-index:10;
  background:#ffffffcc; backdrop-filter: blur(10px);
  border-bottom:1px solid var(--line);
}

.brand{display:flex;align-items:center;gap:12px}
.logo{
  width:44px;height:44px;border-radius:14px;
  display:flex;align-items:center;justify-content:center;
  font-weight:900;letter-spacing:.5px;color:white;
  background: linear-gradient(135deg, var(--accent), #2dd4bf);
  box-shadow: 0 10px 20px rgba(20,184,166,.22);
}
.brandText .name{font-weight:900;font-size:18px;line-height:1}
.brandText .tag{font-size:12px;color:var(--muted);margin-top:4px}

.topActions{display:flex;align-items:center;gap:10px}
.ghost{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 12px;border-radius:14px;
  border:1px solid var(--line);
  background:#fff;
}
.cta{
  display:inline-flex;align-items:center;justify-content:center;
  padding:10px 14px;border-radius:14px;
  border:1px solid rgba(20,184,166,.35);
  background: linear-gradient(135deg, var(--accent), #2dd4bf);
  font-weight:900;color:white;
  box-shadow: 0 12px 24px rgba(20,184,166,.18);
}
.cta:hover{filter:brightness(.98)}
.cta.big,.ghost.big{padding:14px 16px;border-radius:16px;font-size:15px}
.cta.full,.ghost.full{width:100%}

.hero{
  display:grid; grid-template-columns: 1.2fr .9fr;
  gap:18px; padding:26px 0 10px;
}
.hero h1{margin:0;font-size:44px;letter-spacing:-1px;line-height:1.02}
.hero h1.accent{
  color:transparent;
  background:linear-gradient(135deg, var(--accent), #2dd4bf);
  -webkit-background-clip:text;background-clip:text;
}
.sub{margin-top:14px;color:var(--muted);font-size:16px;line-height:1.6;max-width:560px}
.sub2{margin:10px 0 0;color:var(--muted);font-size:15px;line-height:1.6;max-width:760px}

.heroButtons{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
.proof{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.pill{
  border:1px solid var(--line);
  background:#fff;
  padding:8px 10px;border-radius:999px;color:var(--muted);font-size:13px;
}

.card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:16px;
  box-shadow: var(--shadow);
}
.cardTitle{font-weight:900;letter-spacing:.2px}
.cardHint{color:var(--muted);font-size:13px;margin-top:6px}
.qrFrame{
  margin-top:14px;
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  border:1px solid var(--line);
  border-radius:16px;
  padding:12px;
  display:flex;align-items:center;justify-content:center;
  min-height:240px;
}

.section{padding:36px 0 10px}
.section h2{margin:0;font-size:26px;letter-spacing:-.2px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.feature{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:16px;
}
.featureNum{
  width:34px;height:34px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(20,184,166,.14);
  border:1px solid rgba(20,184,166,.25);
  font-weight:900;color:#0f172a;
}
.featureTitle{margin-top:10px;font-weight:900}
.featureBody{margin-top:6px;color:var(--muted);line-height:1.5;font-size:14px}

.callout{
  margin-top:14px;
  border:1px solid rgba(20,184,166,.28);
  background:rgba(20,184,166,.08);
  border-radius:var(--radius);
  padding:14px 16px;
}
.calloutTitle{font-weight:900}
.calloutBody{color:var(--muted);margin-top:6px;line-height:1.55}

.appHeader{display:flex;flex-direction:column;gap:6px}
.appGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.panel{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:16px;
  box-shadow: var(--shadow);
}
.panelTitle{font-weight:900}

.stores{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.store{
  display:flex;align-items:center;gap:10px;
  padding:10px 10px;border-radius:14px;
  border:1px solid var(--line);
  background:var(--panel);
}
.store input{transform:scale(1.1)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.status{margin-top:12px;color:var(--muted);font-size:13px;min-height:18px}

.qrBig{
  margin-top:12px;
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  border:1px solid var(--line);
  border-radius:16px;
  padding:12px;
  display:flex;align-items:center;justify-content:center;
  min-height:320px;
}

.divider{height:1px;background:var(--line);margin:14px 0}
.miniText{color:var(--muted);font-size:13px;line-height:1.55;margin-top:10px}
.bullets{margin:8px 0 0 18px;color:var(--muted)}
.bullets li{margin:6px 0}

.join{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.input{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px 12px;
  color:var(--text);
  min-width:240px;
  outline:none;
}
.input::placeholder{color:#94a3b8}

.footer{
  margin-top:30px;
  padding-top:16px;
  border-top:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;
  color:var(--muted);
  font-size:13px;
}

/* -------------------------
   Manufacturer Deals list
-------------------------- */
.mDeals{margin-top:12px;display:grid;gap:10px}
.mDeal{
  display:flex;align-items:flex-start;justify-content:space-between;gap:10px;
  padding:12px;border:1px solid var(--line);background:var(--panel);border-radius:14px;
}
.mDeal .left{display:flex;flex-direction:column;gap:4px}
.mDeal .title{font-weight:900}
.mDeal .meta{color:var(--muted);font-size:13px;line-height:1.35}
.badge{
  display:inline-flex;align-items:center;gap:6px;
  font-size:12px;padding:6px 10px;border-radius:999px;
  border:1px solid var(--line);background:#fff;color:var(--muted);
  margin-top:6px;width:max-content;
}

/* -------------------------
   Connected accounts dashboard
-------------------------- */
.accounts{margin-top:12px;display:grid;gap:10px}
.account{
  display:flex;align-items:flex-start;justify-content:space-between;gap:10px;
  padding:12px;border:1px solid var(--line);background:var(--panel);border-radius:14px;
}
.account .left{display:flex;flex-direction:column;gap:6px}
.account .row1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.account .storeName{font-weight:900}
.account .state{
  font-size:12px;padding:6px 10px;border-radius:999px;border:1px solid var(--line);
  background:#fff;color:var(--muted);
}
.account .meta{color:var(--muted);font-size:13px;line-height:1.35}
.account .actions{display:flex;flex-direction:column;gap:8px;min-width:140px}
.account .actions button{width:100%}

@media (max-width: 920px){
  .hero{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .appGrid{grid-template-columns:1fr}
  .topActions{display:none}
  .hero h1{font-size:38px}
  .stores{grid-template-columns:1fr}
  .row{grid-template-columns:1fr}
}