/* ===== FYNX — black & white site ===== */
:root{
  --bg:#000;
  --surface:#0e0e0e;
  --card:#101010;
  --text:#fff;
  --muted:#cfcfcf;
  --border:#1c1c1c;
  --shadow:0 16px 44px rgba(0,0,0,.65);
}

@media (prefers-color-scheme: light){
  :root{
    --bg:#000; --surface:#0e0e0e; --card:#101010; --text:#fff; --muted:#cfcfcf; --border:#1c1c1c; --shadow:0 16px 44px rgba(0,0,0,.65);
  }
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:#000; color:var(--text);
  font:16px/1.6 -apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display",Inter,system-ui,"Segoe UI",Roboto,"Apple Color Emoji","Segoe UI Emoji";
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}

/* Header */
.header{
  position:sticky; top:0; z-index:50;
  background:#000a; backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--border);
}
.container{max-width:1120px; margin:0 auto; padding:0 20px}
.nav{display:flex; align-items:center; justify-content:space-between; padding:12px 0}
.brand{display:flex; align-items:center; gap:10px; color:#fff; text-decoration:none; font-weight:700; letter-spacing:.2px}
.brand .dot{width:10px;height:10px;border-radius:999px;background:#fff; box-shadow:none}

.navlinks{display:flex; gap:16px}
.navlinks a{color:var(--muted); text-decoration:none}
.navlinks a:hover{color:#fff}

/* Hero */
.hero{padding:64px 0 24px}
.grid{display:grid; grid-template-columns:1.1fr .9fr; gap:40px; align-items:center}
@media (max-width:900px){.grid{grid-template-columns:1fr; text-align:center}}

.h1{font-size:clamp(36px,6vw,64px); line-height:1.04; margin:0 0 10px}
.subtitle{color:var(--muted); font-size:clamp(16px,2.2vw,20px); margin-bottom:20px}

.cta{display:flex; gap:12px; flex-wrap:wrap; justify-content:flex-start}
@media (max-width:900px){.cta{justify-content:center}}
.btn{display:inline-flex; align-items:center; gap:10px; padding:12px 16px; border-radius:12px; background:#111; color:#fff; border:1px solid var(--border); text-decoration:none; font-weight:600; box-shadow:var(--shadow)}
.btn:hover{transform:translateY(-1px)}
.icon{width:18px;height:18px; display:inline-block}

/* Device images */
.phone{width:100%; max-width:460px; margin:0 auto; border-radius:34px; border:1px solid var(--border); box-shadow:var(--shadow); display:block; background:#000}

/* Sections */
.section{padding:60px 0}
.kicker{display:inline-block; color:var(--muted); font-size:12px; letter-spacing:.35px; text-transform:uppercase; margin-bottom:8px}
h2{font-size:28px; margin:0 0 10px}

.cards{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
@media (max-width:900px){.cards{grid-template-columns:1fr}}
.card{background:var(--card); border:1px solid var(--border); border-radius:16px; padding:22px; box-shadow:var(--shadow)}
.card h3{margin:0 0 6px; font-size:18px}
.card p{margin:0}

/* Legal pages */
.legal-wrap{max-width:860px; margin:40px auto; padding:0 20px}
.legal-card{padding:26px; background:var(--card); border:1px solid var(--border); border-radius:16px; box-shadow:var(--shadow)}
.legal-card h1{font-size:40px; margin:0 0 10px}
.meta{color:var(--muted); margin-bottom:18px}
.legal-card h2{font-size:22px; margin:22px 0 10px}
.legal-card h3{font-size:18px; margin:16px 0 6px}
.legal-card p{margin:10px 0}
.legal-card ul{padding-left:20px; margin:8px 0 16px}

/* Footer */
.footer{margin-top:50px; padding:20px 0; border-top:1px solid var(--border); background:#000}
.footer .links{display:flex; gap:20px; flex-wrap:wrap; justify-content:center}
.footer a{color:var(--muted); text-decoration:none}
.footer a:hover{color:#fff}
