/* Shared look. Inlined into every page on purpose: three pages do not justify a
   second network request, and an inlined stylesheet cannot 404 on a host that
   mangles paths. Edit here, then re-run Scripts/site_build.sh to propagate. */
:root { color-scheme: light dark; --fg:#14161a; --muted:#5b6470; --bg:#fff; --card:#f5f6f8; --accent:#0a84ff; --line:#e3e6ea; --warm:#c98a00; }
@media (prefers-color-scheme: dark) { :root { --fg:#f2f4f7; --muted:#a2abb8; --bg:#0d0f12; --card:#171a1f; --line:#262b32; --warm:#e0a412; } }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; }
.wrap { max-width:880px; margin:0 auto; padding:64px 20px 96px; }
h1 { font-size:44px; line-height:1.08; margin:0 0 14px; letter-spacing:-.035em; }
.lede { font-size:20px; color:var(--muted); margin:0 0 10px; line-height:1.5; }
.sub { font-size:15px; color:var(--muted); margin:0 0 36px; }
.updated { font-size:14px; color:var(--muted); margin:0 0 32px; }
h2 { font-size:24px; margin:56px 0 12px; letter-spacing:-.015em; }
h3 { font-size:17px; margin:28px 0 6px; }
p { margin:0 0 14px; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:14px; margin:24px 0; }
.card { background:var(--card); border:1px solid var(--line); border-radius:14px; padding:18px 20px; }
.card h3 { margin:0 0 6px; font-size:16px; }
.card p { margin:0; color:var(--muted); font-size:15px; }
.honest { border-left:3px solid var(--warm); padding-left:16px; margin:28px 0; }
a { color:var(--accent); }
table { width:100%; border-collapse:collapse; margin:16px 0; font-size:15px; display:block; overflow-x:auto; }
th, td { text-align:left; padding:10px 12px; border-bottom:1px solid var(--line); vertical-align:top; }
th { color:var(--muted); font-weight:600; }
td.yes { color:#1a8f4c; font-weight:600; }
td.no { color:var(--muted); }
@media (prefers-color-scheme: dark) { td.yes { color:#41d17e; } }
ul { padding-left:20px; margin:0 0 14px; }
li { margin:6px 0; }
.shots { display:flex; gap:16px; overflow-x:auto; padding:8px 0 20px; margin:28px 0 8px; scroll-snap-type:x mandatory; }
.shot { flex:0 0 auto; width:230px; scroll-snap-align:start; margin:0; }
.shot img { width:100%; height:auto; border-radius:18px; border:1px solid var(--line); display:block; }
.shot figcaption { color:var(--muted); font-size:13px; margin-top:8px; line-height:1.4; }
.hero-shot { float:right; width:210px; margin:0 0 20px 28px; }
.hero-shot img { width:100%; height:auto; border-radius:20px; border:1px solid var(--line); display:block; }
@media (max-width:640px) { .hero-shot { float:none; width:190px; margin:24px auto 8px; } h1 { font-size:34px; } }
.faq dt { font-weight:600; margin-top:18px; }
.faq dd { margin:6px 0 0; color:var(--muted); }
footer { margin-top:72px; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); font-size:14px; }
