
:root{
  --ink:#2a241f;
  --paper:#f7f2ea;
  --cream:#fffaf3;
  --rust:#8b4a2f;
  --sage:#6e7662;
  --gold:#b99155;
  --line:#d9cdbd;
  --shadow:0 12px 30px rgba(42,36,31,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Arial, Helvetica, sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.65;
  font-size:18px;
}
a{color:var(--rust)}
a:hover{color:#5f2e1d}
.site-header{
  position:sticky; top:0; z-index:10;
  background:rgba(255,250,243,.97);
  border-bottom:1px solid var(--line);
}
.header-inner{
  max-width:1180px; margin:auto; padding:16px 22px;
  display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.brand{
  text-decoration:none; color:var(--ink); font-weight:800; font-size:1.15rem;
}
.brand span{display:block; font-size:.75rem; color:var(--rust); letter-spacing:.08em; text-transform:uppercase}
nav{display:flex; flex-wrap:wrap; gap:14px}
nav a{color:var(--ink); text-decoration:none; font-weight:700; font-size:.92rem}
nav a[aria-current="page"]{color:var(--rust)}
.hero{
  min-height:64vh;
  display:grid; place-items:center;
  padding:72px 22px;
  background:
    linear-gradient(rgba(42,36,31,.56), rgba(42,36,31,.56)),
    radial-gradient(circle at 20% 20%, #9f7c59 0, #6b5748 38%, #342b25 100%);
  color:white; text-align:center;
}
.hero-inner{max-width:850px}
.eyebrow{text-transform:uppercase; letter-spacing:.14em; font-weight:800; font-size:.8rem}
h1,h2,h3{line-height:1.15}
h1{font-size:clamp(2.5rem,7vw,5.2rem); margin:.15em 0}
h2{font-size:clamp(1.9rem,4vw,3rem); margin:0 0 .45em}
h3{font-size:1.35rem; margin-top:0}
.hero p{font-size:1.25rem; max-width:730px; margin:0 auto 28px}
.btn{
  display:inline-block; padding:14px 22px; border-radius:999px;
  background:var(--rust); color:white; text-decoration:none; font-weight:800;
  border:2px solid var(--rust);
}
.btn.alt{background:transparent; border-color:white}
.btn-row{display:flex; justify-content:center; gap:12px; flex-wrap:wrap}
.section{padding:70px 22px}
.section.alt{background:var(--cream)}
.wrap{max-width:1100px; margin:auto}
.narrow{max-width:760px; margin:auto}
.grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px}
.card{
  background:white; border:1px solid var(--line); border-radius:18px;
  padding:26px; box-shadow:var(--shadow);
}
.card p:last-child{margin-bottom:0}
.kicker{color:var(--rust); font-weight:800; text-transform:uppercase; letter-spacing:.1em; font-size:.78rem}
.quote{
  border-left:5px solid var(--gold);
  padding:18px 22px; background:white; border-radius:0 14px 14px 0;
  box-shadow:var(--shadow); margin:22px 0;
}
.list-clean{padding-left:1.2em}
.list-clean li{margin:.55em 0}
.banner{
  background:var(--sage); color:white; padding:42px 22px; text-align:center;
}
.page-hero{
  padding:64px 22px 46px;
  background:linear-gradient(135deg,#43372f,#7a5d48);
  color:white;
}
.page-hero .wrap{max-width:900px}
.meta{
  display:grid; grid-template-columns:repeat(2,1fr); gap:18px;
}
footer{
  background:#241f1b; color:#eee4d7; padding:40px 22px;
}
.footer-inner{max-width:1100px;margin:auto;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
.small{font-size:.9rem;color:#695f56}
.notice{
  background:#fff3d8;border:1px solid #e2c68a;padding:16px 18px;border-radius:12px
}
@media (max-width:850px){
  .header-inner{align-items:flex-start; flex-direction:column}
  nav{gap:10px 14px}
  .grid,.meta{grid-template-columns:1fr}
  body{font-size:17px}
  .hero{min-height:auto}
}
