/* Shared styles for GoFlow static content pages (SEO cluster). Apple-style dark. */
:root {
  --bg:#0B0B0D; --surface:#131316; --surface2:#1A1A1F; --surface3:#222228;
  --border:#26262C; --border-hi:#33333A;
  --text:#F5F5F7; --text-mid:#C8C8CC; --dim:#8A8A92;
  --red:#FF6363; --redHi:#FF8585; --purple:#7C5CFF;
  --sf:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",system-ui,sans-serif;
  --mono:"JetBrains Mono","SF Mono",ui-monospace,Menlo,monospace;
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:var(--bg); color:var(--text); font-family:var(--sf);
  letter-spacing:-0.012em; line-height:1.65; -webkit-font-smoothing:antialiased; }
a { color:var(--redHi); text-decoration:none; }
a:hover { text-decoration:underline; }
.wrap { max-width:760px; margin:0 auto; padding:0 24px; }

/* nav */
nav { position:sticky; top:0; z-index:50; backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px);
  background:rgba(11,11,13,.72); border-bottom:1px solid var(--border); }
nav .wrap { max-width:1120px; display:flex; align-items:center; justify-content:space-between; height:58px; }
.logo { font-size:19px; font-weight:600; letter-spacing:-0.018em; color:var(--text); }
.logo span { color:var(--red); }
.nav-cta { background:var(--red); color:#1a0606; font-weight:600; font-size:13px; padding:8px 14px; border-radius:10px; }
.nav-cta:hover { background:var(--redHi); text-decoration:none; }

/* article */
article { padding:64px 0 40px; }
.eyebrow { color:var(--red); font-weight:600; font-size:12px; letter-spacing:.07em; text-transform:uppercase; font-family:var(--mono); }
h1 { font-size:clamp(34px,5.4vw,52px); font-weight:600; line-height:1.07; letter-spacing:-0.032em; margin:14px 0 0;
  background:linear-gradient(180deg,#fff,#C4C4CC); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.lede { font-size:20px; color:var(--text-mid); margin-top:22px; line-height:1.55; }
.meta { font-family:var(--mono); font-size:12.5px; color:var(--dim); margin-top:20px; }
article h2 { font-size:27px; font-weight:600; letter-spacing:-0.02em; margin:48px 0 16px; line-height:1.15; }
article h3 { font-size:19px; font-weight:600; margin:30px 0 10px; }
article p { color:var(--text-mid); margin:14px 0; font-size:17px; }
article ul, article ol { color:var(--text-mid); margin:14px 0 14px 22px; font-size:17px; }
article li { margin:8px 0; }
article strong { color:var(--text); font-weight:600; }
blockquote { border-left:3px solid var(--red); padding:6px 0 6px 22px; margin:24px 0; color:var(--text);
  font-size:21px; font-weight:500; letter-spacing:-0.018em; line-height:1.4; }
blockquote cite { display:block; font-size:13px; color:var(--dim); font-family:var(--mono); font-style:normal; margin-top:12px; }
hr { border:0; border-top:1px solid var(--border); margin:48px 0; }

/* GEO answer-first box: concise, quotable summary for AI engines + snippets */
.answer { background:linear-gradient(180deg, rgba(124,92,255,.08), transparent), var(--surface);
  border:1px solid var(--border-hi); border-left:3px solid var(--red); border-radius:14px;
  padding:20px 24px; margin:24px 0; }
.answer p { margin:0; font-size:17px; color:var(--text); line-height:1.55; }
.answer p + p { margin-top:10px; }
.answer .k { font-family:var(--mono); font-size:11px; font-weight:600; color:var(--red);
  letter-spacing:.07em; text-transform:uppercase; display:block; margin-bottom:8px; }
.keyfacts { display:grid; gap:8px; margin:20px 0; padding:0; list-style:none; }
.keyfacts li { background:var(--surface); border:1px solid var(--border); border-radius:10px;
  padding:12px 16px; font-size:15px; color:var(--text-mid); margin:0; }
.keyfacts b { color:var(--text); }

/* hub grid */
.hub-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:14px; margin:28px 0; }
.hub-grid a { display:block; background:var(--surface); border:1px solid var(--border); border-radius:14px;
  padding:18px 20px; color:var(--text); font-weight:600; font-size:16px; }
.hub-grid a:hover { border-color:var(--border-hi); text-decoration:none; }
.hub-grid a span { display:block; color:var(--dim); font-size:13.5px; font-weight:400; margin-top:4px; line-height:1.45; }
.hub-section { margin-top:40px; }
.hub-section h2 { margin-bottom:4px; }

/* comparison table */
.tbl-wrap { overflow-x:auto; margin:24px 0; border:1px solid var(--border); border-radius:14px; }
table { width:100%; border-collapse:collapse; font-size:15px; }
th, td { text-align:left; padding:14px 16px; border-bottom:1px solid var(--border); }
th { background:var(--surface2); color:var(--text); font-weight:600; }
td { color:var(--text-mid); }
tr:last-child td { border-bottom:none; }
.yes { color:#34D399; font-weight:600; }
.no { color:var(--dim); }

/* callout / cta */
.cta { background:radial-gradient(ellipse at top, rgba(255,99,99,.12), transparent 60%), var(--surface);
  border:1px solid var(--border-hi); border-radius:18px; padding:32px; margin:48px 0; text-align:center; }
.cta h3 { font-size:23px; margin:0 0 8px; }
.cta p { color:var(--dim); margin:0 0 20px; }
.btn { display:inline-flex; align-items:center; gap:8px; background:var(--red); color:#1a0606;
  font-weight:600; font-size:15px; padding:12px 22px; border-radius:11px; }
.btn:hover { background:var(--redHi); text-decoration:none; transform:translateY(-1px); transition:all .18s; }

/* related links */
.related { display:grid; gap:10px; margin-top:16px; }
.related a { display:block; background:var(--surface); border:1px solid var(--border); border-radius:12px;
  padding:16px 18px; color:var(--text); font-weight:500; }
.related a:hover { border-color:var(--border-hi); text-decoration:none; }
.related a span { display:block; color:var(--dim); font-size:14px; font-weight:400; margin-top:3px; }

/* faq */
.qa { background:var(--surface); border:1px solid var(--border); border-radius:14px; padding:20px 22px; margin:12px 0; }
.qa h3 { margin:0 0 6px; font-size:16px; }
.qa p { margin:0; font-size:15px; color:var(--dim); }

footer { border-top:1px solid var(--border); padding:36px 0; color:var(--dim); font-size:13px; margin-top:24px; }
footer .wrap { max-width:1120px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; align-items:center; }
footer a { color:var(--dim); }
