:root { --navy:#1c1f22; --accent:#d2f58a; --light:#f5f6ef; --text:#1c1f22; --muted:#626b62; }
* { box-sizing:border-box; margin:0; }
body { font-family:"DM Sans",system-ui,sans-serif; background:var(--light); color:var(--text); line-height:1.7; }
a { color:#55613a; }
.ph { background:#ffd54a55; outline:1px dashed #c9a400; border-radius:4px; padding:0 4px; } /* placeholder marker: replace before release */
header { background:var(--navy); color:#fff; }
header .wrap { display:flex; align-items:center; justify-content:space-between; padding:18px 16px; gap:16px; }
header a { color:#fff; text-decoration:none; }
.logo img { display:block; height:28px; width:auto; }
.wrap { max-width:820px; margin:0 auto; padding:0 16px; }
main { padding:48px 0 80px; }
h1 { font-size:clamp(30px,5vw,42px); line-height:1.15; margin-bottom:8px; }
.updated { color:var(--muted); margin-bottom:32px; }
h2 { font-size:22px; margin:36px 0 10px; }
p, ul { margin-bottom:12px; }
ul { padding-left:22px; }
li { margin-bottom:6px; }
.note { background:#fff; border-left:4px solid var(--accent); padding:14px 18px; border-radius:8px; margin-bottom:32px; }
footer { background:var(--navy); color:#9ba49b; font-size:14px; padding:24px 0; }
footer a { color:#fff; margin-right:16px; }
.social { display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }
.social a { width:36px; height:36px; margin:0; border-radius:50%; display:grid; place-items:center; background:#ffffff14; color:#fff; font-size:16px; text-decoration:none; }
.social a:hover { background:var(--accent); color:var(--navy); }
