/* Haytham public pages: shared tokens and layout */
:root { --navy:#0f3d5e; --navy2:#17557f; --deep:#0a2a42; --gold:#e6b65c; --gold2:#c9972f; --sand:#f6f1e7; --sand2:#efe7d6; --ink:#1f2a33; --muted:#6b7a86; --card:#fff; --line:#e3ded3; --green:#2f6e47; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { --sand:#101820; --sand2:#162230; --ink:#e8eef3; --muted:#9fb0bd; --card:#182532; --line:#2a3a48; } }
:root[data-theme="dark"] { --sand:#101820; --sand2:#162230; --ink:#e8eef3; --muted:#9fb0bd; --card:#182532; --line:#2a3a48; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font-family: Georgia, "Times New Roman", serif; background:var(--sand); color:var(--ink); line-height:1.55; }
.sans { font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
a { color:var(--navy2); }
.wrap { max-width:1100px; margin:0 auto; padding:0 20px; }
nav { background:var(--navy); color:#fff; position:sticky; top:0; z-index:10; box-shadow:0 2px 10px rgba(0,0,0,.15); }
nav .wrap { display:flex; align-items:center; gap:16px; height:60px; }
nav .brand { display:flex; align-items:center; gap:10px; color:#fff; text-decoration:none; font-size:20px; }
nav .mark { width:34px; height:34px; border-radius:50%; border:3px solid var(--gold); display:grid; place-items:center; font-weight:bold; font-size:16px; color:var(--gold); font-family: system-ui, sans-serif; }
nav .links { margin-left:auto; display:flex; gap:18px; align-items:center; font-family: system-ui, sans-serif; font-size:14px; }
nav .links a { color:#fff; text-decoration:none; opacity:.9; } nav .links a:hover { opacity:1; text-decoration:underline; }
.btn { display:inline-block; background:var(--gold); color:var(--deep); border:none; border-radius:10px; padding:12px 22px; font-weight:700; font-size:15px; cursor:pointer; text-decoration:none; font-family: system-ui, sans-serif; transition: transform .08s ease, background .15s ease; }
.btn:hover { background:var(--gold2); transform: translateY(-1px); }
.btn.ghost { background:transparent; color:#fff; border:2px solid rgba(255,255,255,.7); }
.btn.ghost:hover { background:rgba(255,255,255,.1); }
.card { background:var(--card); border:1px solid var(--line); border-radius:14px; padding:22px; }
.eyebrow { font-family: system-ui, sans-serif; font-size:12px; letter-spacing:1.4px; text-transform:uppercase; color:var(--gold2); font-weight:700; }
h1, h2, h3 { font-weight:normal; color:var(--navy); margin:0 0 10px; line-height:1.2; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) h1, :root:not([data-theme="light"]) h2, :root:not([data-theme="light"]) h3 { color:#dbe7f0; } }
h1 { font-size:44px; } h2 { font-size:30px; } h3 { font-size:20px; }
@media (max-width:700px) { h1 { font-size:32px; } h2 { font-size:24px; } }
section { padding:64px 0; }
section.alt { background:var(--sand2); }
.muted { color:var(--muted); }
footer { background:var(--deep); color:#cfd9e2; padding:36px 0; font-family: system-ui, sans-serif; font-size:13px; }
footer a { color:#fff; }
.small { font-size:13px; }
input[type=text], input[type=email], input[type=password], textarea { width:100%; padding:12px; border:1px solid var(--line); border-radius:10px; font-size:16px; background:var(--card); color:var(--ink); font-family: Georgia, serif; }
label { display:block; font-family: system-ui, sans-serif; font-size:13px; color:var(--muted); margin:16px 0 6px; }
.err { color:#b4232c; font-family: system-ui, sans-serif; font-size:13px; min-height:1.2em; margin-top:8px; }

@media (max-width:760px) { nav .links a:not(.btn) { display:none; } nav .wrap { height:56px; } }
