:root{
  --ink:#14161a;
  --ink-soft:#4a4d55;
  --paper:#faf9f6;
  --paper-2:#f2f0ea;
  --line:#e4e1d8;
  --accent:#a9722f;
  --accent-deep:#7c4f1c;
  --white:#ffffff;
  --radius:14px;
  --maxw:1120px;
  --font-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;
  --font-serif:'Fraunces',Georgia,'Times New Roman',serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font-sans);
  color:var(--ink);
  background:var(--paper);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
h1,h2,h3,.serif{
  font-family:var(--font-serif);
  font-weight:500;
  letter-spacing:-0.01em;
  color:var(--ink);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block;height:auto}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
@media(min-width:768px){.wrap{padding:0 32px}}
section{padding:80px 0}
@media(min-width:768px){section{padding:104px 0}}
.eyebrow{
  font-size:12.5px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--accent-deep);
  font-weight:600;
  margin-bottom:18px;
  display:inline-block;
}
.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:14px 28px;
  border-radius:999px;
  font-weight:600;
  font-size:14.5px;
  transition:all .2s ease;
  cursor:pointer;
  border:1px solid transparent;
  text-align:center;
  line-height:1.2;
}
.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.btn-primary{background:var(--ink);color:var(--white)}
.btn-primary:hover{background:var(--accent-deep);transform:translateY(-1px)}
.btn-ghost{border-color:var(--ink);color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--white)}
.btn-accent{background:var(--accent);color:var(--white)}
.btn-accent:hover{background:var(--accent-deep);transform:translateY(-1px)}
.btn-sm{padding:10px 20px;font-size:13.5px}
.btn-block{width:100%;justify-content:center}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
