:root{
  --bg:#ffffff;
  --ink:#172025;
  --muted:#56636c;
  --line:#e7ecef;
  --brand:#1f5a2b;
  --accent:#d4af37;
  --max:1100px;
  --radius:14px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  background:var(--bg);
  color:var(--ink);
  line-height:1.55;
}

.container{max-width:var(--max);margin:0 auto;padding:0 18px}

a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}

.topbar{background:#121416;color:#e9eef4;font-size:14px}
.topbar__inner{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:10px 0}
.topbar__left{display:flex;gap:16px;flex-wrap:wrap}
.topbar__right{display:flex;gap:12px}

.siteheader{border-bottom:1px solid var(--line);background:#fff}
.head__inner{display:flex;justify-content:space-between;gap:22px;align-items:center;padding:18px 0}

.brand{display:flex;gap:14px;align-items:center;min-width:280px}
.brand__mark{height:66px;width:auto;display:block}
.brand__name{
  font-family:"ADLaM Display", system-ui, sans-serif;
  font-size:46px; line-height:1; letter-spacing:1px;
  color:var(--brand);
}
.brand__tag{
  font-family:"Times New Roman", Times, serif;
  font-size:22px; font-style:italic;
  margin-top:2px;
}

.nav{display:flex;gap:22px;flex-wrap:wrap}
.nav a{padding:10px 0;color:var(--ink);font-size:16px}
.nav a:hover{text-decoration:none;color:var(--brand)}

.hero{display:grid;grid-template-columns:1.35fr 0.65fr;gap:26px;padding:44px 0}
.hero h1{font-size:44px;line-height:1.08;margin:8px 0 10px}
.eyebrow{color:var(--muted);font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin:0}
.lead{color:var(--muted);font-size:18px;max-width:70ch;margin:0 0 16px}
.note{color:var(--muted);font-size:14px;margin:16px 0 0}

.hero__panel{display:flex;flex-direction:column;gap:14px}
.panel{
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:16px 16px;
  background:#fff;
}
.panel h2{font-size:16px;margin:0 0 10px}
.small{color:var(--muted);font-size:14px;margin:0}

.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}

.btn{
  display:inline-block;
  background:var(--brand);
  color:#fff;
  padding:10px 14px;
  border-radius:12px;
  border:1px solid var(--brand);
  font-weight:600;
}
.btn:hover{filter:brightness(.95);text-decoration:none}
.btn--ghost{
  background:transparent;
  color:var(--brand);
}
.btn--ghost:hover{background:#f3f7f4}

.ticks{margin:0;padding-left:18px;color:var(--muted)}
.ticks li{margin:6px 0}

.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:18px 0 34px;border-top:1px solid var(--line)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:18px 0 34px;border-top:1px solid var(--line)}

.card{
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:18px;
  background:#fff;
}
.card h2{font-size:18px;margin:0 0 10px}
.card h3{font-size:18px;margin:0 0 10px}
.card p{color:var(--muted);margin:0 0 10px}

.bullets{margin:0;padding-left:18px;color:var(--muted)}
.bullets li{margin:6px 0}

.strip{border-top:1px solid var(--line);padding:26px 0}
.strip__inner{
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:18px;
  background:#fbfcfd;
}
.strip__inner h2{margin:0 0 8px}
.strip__inner p{margin:0;color:var(--muted)}

.pagehead{padding:34px 0 8px}
.pagehead h1{font-size:40px;line-height:1.1;margin:8px 0 10px}

.notice{
  border:1px solid #cfe7d3;
  background:#f2fbf3;
  padding:12px 14px;
  border-radius:12px;
  margin:10px 0 18px;
}

.form label{display:block;color:var(--muted);font-size:14px;margin:0 0 10px}
.form input,.form textarea{
  width:100%;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  margin-top:6px;
  font:inherit;
}
.form input:focus,.form textarea:focus{outline:2px solid rgba(31,90,43,.15);border-color:rgba(31,90,43,.35)}
.hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

.hr{border:0;border-top:1px solid var(--line);margin:16px 0}

.footer{border-top:1px solid var(--line);padding:16px 0;margin-top:18px;color:var(--muted);font-size:14px}
.footer__inner{display:flex;flex-direction:column;gap:4px}

/* Responsive */
@media (max-width: 900px){
  .head__inner{flex-direction:column;align-items:flex-start}
  .hero{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  .brand__name{font-size:40px}
}
.section {
    padding: 60px 0;
}

.pagehead h1 {
    margin-bottom: 16px;
}

.lead {
    font-size: 1.15rem;
    max-width: 800px;
}

.strip {
    margin: 60px 0;
}

.strip__inner {
    max-width: 900px;
}

.grid2 {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    margin: 60px 0;
}

.card {
    background: #fff;
    padding: 30px;
    border-radius: 6px;
}