/* =========================== SafeRoute Base Stylesheet For shared color + frame system =========================== */ :root { /* brand palette */ --bg: #ffffff; --fg: #111111; --muted: #777777; --accent: #111111; --border: #e5e5e5; /* layout rhythm */ --pad: 24px; --maxw: 980px; } /* ---- Base ---- */ html, body { margin: 0; padding: 0; font-family: "Helvetica Neue", Helvetica, Arial, system-ui, sans-serif; color: var(--fg); background: var(--bg); line-height: 1.5; } a { color: inherit; text-decoration: none; transition: opacity .2s ease; } a:hover { opacity: .7; } /* ---- Frame / Container ---- */ .container { max-width: var(--maxw); margin: 0 auto; padding: var(--pad); } /* ---- Headings ---- */ h1, h2, h3, h4 { margin: 0 0 .6em; font-weight: 700; letter-spacing: -0.02em; } p { margin: 0 0 1.2em; color: var(--muted); } /* ---- Navbar ---- */ .nav { position: sticky; top: 0; display: flex; align-items: center; justify-content: space-between; padding: 16px var(--pad); border-bottom: 1px solid var(--border); background: var(--bg); } .brand { font-weight: 800; letter-spacing: -0.04em; font-size: 18px; } .nav-links { display: flex; gap: 24px; font-size: 14px; } /* ---- Buttons ---- */ .btn { display: inline-block; padding: 10px 20px; border-radius: 999px; border: 1px solid var(--accent); background: var(--accent); color: #fff; font-size: 14px; transition: background .2s ease; } .btn:hover { background: #333; } /* ---- Sections ---- */ .section { padding: 64px var(--pad); border-top: 1px solid var(--border); } /* ---- Footer ---- */ footer { text-align: center; padding: 40px var(--pad); font-size: 13px; color: var(--muted); border-top: 1px solid var(--border); }