/* Reset */
*{margin:0;padding:0;box-sizing:border-box}

/* Base */
body{
  font-family:'Source Serif 4',Georgia,serif;
  color:#1a1a1a;
  background:#fff;
  font-size:18px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Links */
a{color:#2b6c3f;text-decoration:none}
a:hover{text-decoration:underline}

/* Header */
header{
  display:flex;justify-content:space-between;align-items:center;
  padding:14px 24px;
  border-bottom:1px solid #e0e0e0;
  position:sticky;top:0;background:#fff;z-index:10;
  font-family:'Inter',system-ui,sans-serif;
}
header a.logo{font-size:1.05rem;font-weight:600;color:#1a1a1a;text-decoration:none;letter-spacing:-.02em}
.btn{
  background:#1a1a1a;color:#fff;
  padding:7px 16px;border-radius:4px;
  font-size:.8rem;font-weight:500;
  text-decoration:none;
  font-family:'Inter',system-ui,sans-serif;
}
.btn:hover{background:#444;text-decoration:none}

/* Nav — horizontal bar */
nav{
  max-width:680px;margin:0 auto;
  padding:12px 24px;
  display:flex;gap:24px;
  border-bottom:1px solid #eee;
  font-family:'Inter',system-ui,sans-serif;
  font-size:.85rem;
  font-weight:500;
}
nav a{white-space:nowrap;color:#555}
nav a:hover{color:#1a1a1a}

/* Main content */
main{
  max-width:680px;
  margin:0 auto;
  padding:36px 24px 72px;
}

/* Typography */
h1{
  font-size:2.25rem;
  line-height:1.2;
  margin-bottom:6px;
  font-weight:700;
  letter-spacing:-.02em;
}
.subtitle{
  color:#666;
  margin-bottom:28px;
  font-size:1rem;
  font-family:'Inter',system-ui,sans-serif;
  font-weight:400;
}
h2{
  font-size:1.5rem;
  line-height:1.25;
  margin:40px 0 14px;
  font-weight:700;
  color:#1a1a1a;
  letter-spacing:-.01em;
}
h3{
  font-size:1.2rem;
  line-height:1.3;
  margin:28px 0 10px;
  font-weight:600;
  color:#333;
}
p{margin-bottom:18px}
ul,ol{margin:0 0 18px 28px}
li{margin-bottom:8px}
strong{font-weight:600}
em{font-style:italic}

/* Notice callout */
.notice{
  background:#f6f5f0;
  padding:14px 20px;
  border-radius:6px;
  margin-bottom:32px;
  font-size:.9rem;
  border-left:3px solid #2b6c3f;
  font-family:'Inter',system-ui,sans-serif;
}

/* Figures */
figure{margin:0 0 32px}
figure img{width:100%;height:auto;border-radius:6px;display:block}
figcaption{
  text-align:center;font-size:.8rem;color:#888;margin-top:8px;
  font-family:'Inter',system-ui,sans-serif;
}

/* Info cards */
.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0 24px}
.info-card{
  background:#fafaf8;padding:16px 18px;
  border-radius:6px;border:1px solid #eee;
}
.info-card strong{
  display:block;margin-bottom:4px;
  font-size:.72rem;color:#666;
  text-transform:uppercase;letter-spacing:.6px;
  font-family:'Inter',system-ui,sans-serif;
  font-weight:600;
}
.info-card span{font-size:.95rem;line-height:1.5}

/* Contact box */
.contact{
  background:#f7f6f3;padding:20px 22px;
  border-radius:6px;margin-top:40px;
  font-size:.92rem;line-height:1.6;
}

/* Footer */
footer{
  text-align:center;padding:28px 24px;
  font-size:.85rem;color:#888;
  border-top:1px solid #eee;
  font-family:'Inter',system-ui,sans-serif;
}
footer a{color:#2b6c3f}

/* Mobile */
@media(max-width:640px){
  main{padding:24px 18px 48px}
  h1{font-size:1.75rem}
  h2{font-size:1.3rem;margin-top:32px}
  body{font-size:17px;line-height:1.7}
  nav{padding:10px 18px;gap:18px;overflow-x:auto}
  .info-grid{grid-template-columns:1fr}
}
