:root{
  --bg:#f4f0e6;
  --card:#fbf8f1;
  --text:#1e261d;
  --muted:#677063;
  --olive:#65724f;
  --olive-dark:#4f5b3d;
  --border:#d9d5c9;
  --white:#ffffff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.65;
}
a{color:var(--olive-dark)}
.site-header{
  position:sticky;
  top:0;
  z-index:10;
  backdrop-filter:blur(14px);
  background:rgba(244,240,230,.88);
  border-bottom:1px solid var(--border);
}
.nav{
  max-width:980px;
  margin:0 auto;
  padding:16px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.brand{
  font-weight:800;
  letter-spacing:-.03em;
  font-size:22px;
  text-decoration:none;
  color:var(--text);
}
.nav-links{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  font-size:14px;
}
.nav-links a{
  text-decoration:none;
  color:var(--muted);
}
.nav-links a:hover{color:var(--text)}
main{
  max-width:980px;
  margin:0 auto;
  padding:56px 22px 70px;
}
.hero{
  padding:58px 0 28px;
}
.eyebrow{
  display:inline-block;
  padding:6px 10px;
  border:1px solid var(--border);
  border-radius:999px;
  font-size:12px;
  color:var(--muted);
  background:rgba(255,255,255,.35);
  margin-bottom:18px;
}
h1,h2,h3{
  line-height:1.15;
  letter-spacing:-.035em;
}
h1{
  font-size:clamp(38px,7vw,72px);
  margin:0 0 18px;
  max-width:820px;
}
h2{
  font-size:30px;
  margin:42px 0 14px;
}
h3{
  font-size:20px;
  margin:28px 0 8px;
}
.lead{
  font-size:20px;
  color:var(--muted);
  max-width:760px;
  margin:0;
}
.grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:34px;
}
.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:20px;
  padding:22px;
  min-height:170px;
}
.card h3{margin-top:0}
.button{
  display:inline-block;
  text-decoration:none;
  background:var(--olive);
  color:var(--white);
  padding:12px 16px;
  border-radius:12px;
  font-weight:700;
  margin-top:8px;
}
.button:hover{background:var(--olive-dark)}
.legal{
  max-width:820px;
}
.legal p,.legal li{color:#30372f}
.legal ul{padding-left:22px}
.notice{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
  padding:16px 18px;
  margin:24px 0;
  color:var(--muted);
}
footer{
  border-top:1px solid var(--border);
  padding:26px 22px 42px;
  color:var(--muted);
}
.footer-inner{
  max-width:980px;
  margin:0 auto;
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  font-size:14px;
}
.footer-links{display:flex; gap:14px; flex-wrap:wrap}
.footer-links a{color:var(--muted); text-decoration:none}
@media (max-width:760px){
  .grid{grid-template-columns:1fr}
  .nav{align-items:flex-start}
  .nav-links{justify-content:flex-end}
  main{padding-top:28px}
  .hero{padding-top:34px}
}
