/* Shared styles for TradeBridge legal pages (privacy, terms, refund, disclaimer). */
:root{
  --bg:#ffffff; --ink:#0f172a; --muted:#5b6678; --border:#e7eaf3;
  --brand:#4f46e5; --brand2:#7c6cf6; --brand-soft:#eef0fe; --soft:#f7f8fc;
}
*{ font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{ margin:0; color:var(--ink); background:var(--bg); line-height:1.7; }
a{ color:var(--brand); text-decoration:none; }
a:hover{ text-decoration:underline; }
.container-x{ max-width:900px; margin:0 auto; padding:0 20px; }

/* Nav */
nav.top{ position:sticky; top:0; z-index:50; background:rgba(255,255,255,.9);
  backdrop-filter:saturate(180%) blur(12px); border-bottom:1px solid var(--border); }
.nav-in{ display:flex; align-items:center; gap:14px; height:64px; max-width:1180px; margin:0 auto; padding:0 20px; }
.logo{ display:flex; align-items:center; gap:10px; font-weight:900; font-size:1.2rem; letter-spacing:-.02em; color:var(--ink); }
.logo:hover{ text-decoration:none; }
.logo .mk{ width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff;font-size:1.05rem;
  background:linear-gradient(135deg,var(--brand),var(--brand2)); box-shadow:0 8px 18px -6px rgba(79,70,229,.6); }
.logo span{ color:var(--brand); }
.nav-right{ margin-left:auto; display:flex; align-items:center; gap:8px; }
.btn-ghost{ font-weight:700; color:var(--ink); padding:.5rem .9rem; border-radius:10px; }
.btn-ghost:hover{ background:#f1f3f9; text-decoration:none; }
.btn-grad{ background:linear-gradient(135deg,var(--brand),var(--brand2)); color:#fff!important; font-weight:700;
  padding:.55rem 1.1rem; border-radius:11px; box-shadow:0 10px 22px -8px rgba(79,70,229,.65); }
.btn-grad:hover{ text-decoration:none; color:#fff; }

/* Hero */
.legal-hero{ padding:54px 0 26px;
  background:radial-gradient(800px 320px at 85% -20%, #eef0fe 0, transparent 60%); }
.legal-hero .tag{ color:var(--brand); font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:.78rem; }
.legal-hero h1{ font-size:clamp(2rem,4vw,2.8rem); font-weight:900; letter-spacing:-.025em; margin:8px 0 10px; }
.legal-hero .updated{ color:var(--muted); font-size:.92rem; }

/* Sub-nav pills linking the four documents */
.legal-nav{ display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; }
.legal-nav a{ background:#fff; border:1px solid var(--border); border-radius:999px; padding:.4rem .9rem;
  font-weight:600; font-size:.85rem; color:#41506a; }
.legal-nav a:hover{ background:var(--brand-soft); color:var(--brand); text-decoration:none; }
.legal-nav a.active{ background:linear-gradient(135deg,var(--brand),var(--brand2)); color:#fff; border-color:transparent; }

/* Body prose */
.legal-body{ padding:30px 0 60px; }
.legal-body h2{ font-size:1.3rem; font-weight:800; letter-spacing:-.01em; margin:34px 0 10px; padding-top:6px; }
.legal-body h3{ font-size:1.05rem; font-weight:700; margin:20px 0 8px; }
.legal-body p, .legal-body li{ color:#33415a; }
.legal-body ul{ padding-left:20px; }
.legal-body li{ margin:6px 0; }
.legal-body strong{ color:var(--ink); }
.legal-body .lead{ font-size:1.08rem; color:var(--muted); }
.toc{ background:var(--soft); border:1px solid var(--border); border-radius:14px; padding:18px 22px; margin:6px 0 10px; }
.toc ol{ margin:0; padding-left:20px; columns:2; column-gap:30px; }
.toc li{ margin:4px 0; }
.callout{ background:var(--brand-soft); border:1px solid #dfe1fb; border-radius:12px; padding:14px 16px; margin:16px 0; color:#37406a; }
.callout.warn{ background:#fef6e7; border-color:#f6e2bd; color:#6b4e16; }
.muted{ color:var(--muted); }

/* Contact page */
.grid-2{ display:grid; grid-template-columns:1fr 1.1fr; gap:34px; align-items:start; }
.info-card{ background:var(--soft); border:1px solid var(--border); border-radius:18px; padding:26px; }
.info-row{ display:flex; gap:14px; align-items:flex-start; padding:10px 0; }
.info-row .ic{ width:42px; height:42px; flex:0 0 42px; border-radius:12px; display:grid; place-items:center;
  color:var(--brand); background:var(--brand-soft); font-size:1.15rem; }
.info-row .lbl{ font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; color:var(--muted); font-weight:700; }
.info-row .val{ font-weight:600; color:var(--ink); }
.card-form{ background:#fff; border:1px solid var(--border); border-radius:18px; padding:26px;
  box-shadow:0 30px 60px -40px rgba(15,23,42,.4); }
.fld{ margin-bottom:16px; }
.fld label{ display:block; font-weight:700; font-size:.85rem; margin-bottom:6px; }
.fld input, .fld textarea{ width:100%; padding:.7rem .9rem; border:1px solid var(--border); border-radius:11px;
  font-size:1rem; color:var(--ink); background:#fff; }
.fld input:focus, .fld textarea:focus{ outline:none; border-color:var(--brand); box-shadow:0 0 0 .2rem rgba(79,70,229,.15); }
.hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.btn-grad.full{ width:100%; text-align:center; padding:.85rem 1rem; font-size:1.05rem; border:0; cursor:pointer; }
.form-note{ font-size:.9rem; margin-top:10px; min-height:1.2em; }
@media(max-width:760px){ .grid-2{ grid-template-columns:1fr; } }

/* Footer */
footer{ background:#0b1020; color:#aeb6cf; padding:42px 0 26px; }
footer a{ color:#aeb6cf; } footer a:hover{ color:#fff; }
.foot-row{ display:flex; flex-wrap:wrap; gap:14px; justify-content:space-between; align-items:center; }
.foot-links{ display:flex; flex-wrap:wrap; gap:16px; font-size:.9rem; }
footer hr{ border:0; border-top:1px solid #1d2540; margin:24px 0 16px; }
.foot-bottom{ font-size:.84rem; color:#7a85a6; }

@media(max-width:560px){ .toc ol{ columns:1; } }
