/* Amoria compliance microsite — Solarized, mobile-first, light/dark from system.
   Static, no build step. Pages: index, sms (opt-in), privacy, terms. */

:root {
  /* Solarized */
  --base03:#002b36; --base02:#073642; --base01:#586e75; --base00:#657b83;
  --base0:#839496; --base1:#93a1a1; --base2:#eee8d5; --base3:#fdf6e3;
  --blue:#268bd2; --cyan:#2aa198; --violet:#6c71c4; --magenta:#d33682;

  /* light theme defaults */
  --bg:var(--base3); --bg-soft:var(--base2); --fg:var(--base00); --fg-strong:var(--base01);
  --muted:var(--base1); --accent:var(--blue); --border:#d9d2bf; --card:#fffaf0;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg:var(--base03); --bg-soft:var(--base02); --fg:var(--base0); --fg-strong:var(--base1);
    --muted:var(--base01); --accent:#3aa0e0; --border:#0c3b45; --card:#063540;
  }
}

* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; }
body {
  margin:0; background:var(--bg); color:var(--fg);
  font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
.wrap { max-width:560px; margin:0 auto; padding:24px 20px 64px; }
a { color:var(--accent); }
h1,h2,h3 { color:var(--fg-strong); line-height:1.25; }
h1 { font-size:1.9rem; margin:.2em 0 .3em; }
h2 { font-size:1.25rem; margin:1.8em 0 .4em; }
small, .muted { color:var(--muted); }

header.site {
  display:flex; align-items:center; justify-content:space-between;
  max-width:560px; margin:0 auto; padding:16px 20px;
}
.brand { font-weight:700; color:var(--fg-strong); text-decoration:none; letter-spacing:.02em; }
.brand .star { color:var(--magenta); }
nav a { margin-left:16px; font-size:.9rem; text-decoration:none; }

.hero { padding:24px 0 8px; }
.lead { font-size:1.1rem; color:var(--fg-strong); }
.btn {
  display:inline-block; background:var(--accent); color:#fff; text-decoration:none;
  padding:12px 20px; border-radius:10px; font-weight:600; margin-top:14px;
}
.steps { list-style:none; padding:0; margin:1em 0; }
.steps li { background:var(--bg-soft); border:1px solid var(--border); border-radius:10px; padding:12px 14px; margin:8px 0; }

.card { background:var(--card); border:1px solid var(--border); border-radius:14px; padding:20px; margin:16px 0; }
label.field { display:block; font-weight:600; color:var(--fg-strong); margin:14px 0 6px; }
input[type=tel] {
  width:100%; padding:12px 14px; font-size:1rem; border:1px solid var(--border);
  border-radius:10px; background:var(--bg); color:var(--fg);
}
.consent { display:flex; gap:10px; align-items:flex-start; margin:16px 0; }
.consent input { margin-top:4px; width:20px; height:20px; flex:0 0 auto; }
.consent label { font-size:.92rem; }
.disclosure { font-size:.85rem; color:var(--muted); margin:12px 0; }
button.submit {
  width:100%; padding:14px; font-size:1rem; font-weight:700; color:#fff; background:var(--cyan);
  border:none; border-radius:10px; margin-top:8px; cursor:pointer;
}
button.submit:disabled { background:var(--muted); cursor:not-allowed; }
.notice { background:var(--bg-soft); border-left:3px solid var(--accent); padding:10px 14px; border-radius:6px; margin:14px 0; font-size:.9rem; }

footer.site { border-top:1px solid var(--border); margin-top:40px; padding-top:16px; font-size:.85rem; color:var(--muted); }
footer.site a { margin-right:14px; }

.legal h1 { font-size:1.5rem; }
.legal p, .legal li { font-size:.95rem; }
.legal .updated { color:var(--muted); font-size:.85rem; }
.keyword { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; background:var(--bg-soft); padding:1px 6px; border-radius:4px; }
