:root { --ink:#18312c; --muted:#60736e; --brand:#087f5b; --brand-dark:#075c46; --line:#e2ebe7; --surface:#fff; --page:#f5f9f7; }
* { box-sizing:border-box; }
body { margin:0; background:var(--page); color:var(--ink); font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif; line-height:1.7; }
a { color:var(--brand-dark); text-underline-offset:3px; } a:hover { color:var(--brand); }
.wrap { width:min(900px,calc(100% - 36px)); margin:0 auto; }
.site-header { background:var(--surface); border-bottom:1px solid var(--line); }
.header-inner { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.brand { display:inline-flex; align-items:center; gap:10px; color:var(--ink); text-decoration:none; font-size:1.15rem; font-weight:800; letter-spacing:-.03em; }
.brand small { color:var(--muted); font-size:.8rem; font-weight:600; }
.brand-mark { display:grid; place-items:center; width:38px; height:38px; border-radius:12px; background:var(--brand); color:white; font-size:1.2rem; }
nav { display:flex; flex-wrap:wrap; gap:8px; } nav a { padding:9px 12px; border-radius:9px; text-decoration:none; color:var(--muted); font-size:.92rem; }
nav a.active,nav a:hover { background:#e9f6f0; color:var(--brand-dark); }
.hero { padding:54px 0 30px; } .eyebrow { margin:0 0 8px; color:var(--brand); font-size:.78rem; font-weight:800; letter-spacing:.15em; }
h1 { margin:0 0 12px; font-size:clamp(2rem,5vw,3.1rem); line-height:1.15; letter-spacing:-.045em; }
.hero>p:not(.eyebrow):not(.updated) { max-width:680px; color:var(--muted); font-size:1.08rem; margin:0; }
.updated { margin:18px 0 0; color:var(--muted); font-size:.88rem; }
.content { margin:0 0 56px; padding:clamp(22px,5vw,44px); background:var(--surface); border:1px solid var(--line); border-radius:18px; box-shadow:0 10px 30px rgba(24,49,44,.04); }
h2 { margin:30px 0 8px; font-size:1.22rem; line-height:1.35; letter-spacing:-.02em; } h2:first-child { margin-top:0; }
p { margin:0 0 14px; } ul,ol { padding-left:24px; margin:8px 0 18px; } li { padding-left:4px; margin:5px 0; }
.contact { padding:18px 20px; margin:18px 0; background:#f4faf7; border:1px solid var(--line); border-radius:12px; } .contact p { margin:3px 0; }
.note { color:var(--muted); font-size:.9rem; }
footer { background:var(--surface); border-top:1px solid var(--line); color:var(--muted); font-size:.88rem; }
.footer-inner { min-height:68px; display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; } footer a { color:var(--muted); }
@media(max-width:700px) { .header-inner { padding:14px 0; align-items:flex-start; flex-direction:column; gap:10px; } nav { width:100%; gap:4px; } nav a { padding:8px 9px; font-size:.84rem; } .hero { padding-top:38px; } .footer-inner { padding:16px 0; } }
