:root{
  --ink:#1c1a17;
  --paper:#faf6ef;
  --paper-dark:#f1eade;
  --accent:#33523e;
  --accent-dark:#24402e;
  --muted:#6b645a;
  --line:#e3dbcc;
  --serif:'Fraunces', Georgia, 'Times New Roman', serif;
  --sans:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.6;font-size:17px;}
.wrap{max-width:860px;margin:0 auto;padding:0 24px;}
h1,h2,h3{font-family:var(--serif);line-height:1.15;font-weight:600;}
h2{font-size:2rem;margin-bottom:1rem;}
section{padding:72px 0;}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:1rem;}
.muted{color:var(--muted);}
a{color:var(--accent);}

/* Nav */
nav{padding:20px 0;border-bottom:1px solid var(--line);}
nav .wrap{display:flex;justify-content:space-between;align-items:center;}
.logo{font-family:var(--serif);font-weight:700;font-size:1.6rem;letter-spacing:.01em;color:var(--ink);text-decoration:none;}
.logo span{color:var(--accent);}
.nav-right{display:flex;align-items:center;gap:24px;}
.nav-link{font-size:.95rem;font-weight:600;color:var(--ink);text-decoration:none;}
.nav-link:hover{color:var(--accent);}
nav .cta-mini{font-size:.9rem;font-weight:600;text-decoration:none;color:var(--paper);background:var(--ink);padding:9px 18px;border-radius:6px;}
nav .cta-mini:hover{background:var(--accent);}

/* Hero */
.hero{padding:96px 0 84px;}
.hero h1{font-size:clamp(2.2rem,5.5vw,3.4rem);margin-bottom:1.4rem;font-weight:700;}
.hero h1 em{font-style:italic;color:var(--accent);}
.hero p.lede{font-size:1.2rem;max-width:640px;color:var(--muted);margin-bottom:2.2rem;}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;}
.btn{display:inline-block;text-decoration:none;font-weight:600;font-size:1rem;padding:14px 28px;border-radius:8px;}
.btn-primary{background:var(--accent);color:var(--paper);}
.btn-primary:hover{background:var(--accent-dark);}
.btn-ghost{border:1.5px solid var(--ink);color:var(--ink);}
.btn-ghost:hover{background:var(--ink);color:var(--paper);}
.hero .fineprint{margin-top:1.2rem;font-size:.88rem;color:var(--muted);}

/* Alternating band */
.band{background:var(--paper-dark);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}

/* Problem list */
.prob-list{list-style:none;margin-top:1.6rem;display:grid;gap:14px;}
.prob-list li{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--accent);padding:16px 20px;border-radius:6px;font-size:1.02rem;}
.prob-close{margin-top:1.8rem;font-size:1.08rem;max-width:640px;}

/* Offer */
.offer-price{font-family:var(--serif);font-size:1.5rem;font-weight:600;margin:.4rem 0 1.6rem;}
.offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:1rem;}
.offer-card{border:1px solid var(--line);background:var(--paper-dark);padding:20px 22px;border-radius:8px;}
.offer-card h3{font-size:1.08rem;margin-bottom:.4rem;}
.offer-card p{font-size:.95rem;color:var(--muted);}
.not-included{margin-top:1.8rem;padding:18px 22px;border:1.5px dashed var(--line);border-radius:8px;font-size:.98rem;}
.not-included strong{color:var(--accent);}

/* Cred */
.cred-list{list-style:none;margin-top:1.4rem;display:grid;gap:12px;}
.cred-list li{padding-left:1.6rem;position:relative;font-size:1.02rem;}
.cred-list li::before{content:"—";position:absolute;left:0;color:var(--accent);font-weight:600;}
.honesty{margin-top:1.8rem;font-size:1rem;color:var(--muted);max-width:640px;}

/* Steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:2rem;}
.step{background:var(--paper);border:1px solid var(--line);padding:24px;border-radius:8px;}
.step .num{font-family:var(--serif);font-size:2rem;font-weight:700;color:var(--accent);}
.step h3{font-size:1.05rem;margin:.5rem 0 .4rem;}
.step p{font-size:.93rem;color:var(--muted);}

/* FAQ */
details{border-bottom:1px solid var(--line);padding:18px 0;}
details summary{font-weight:600;cursor:pointer;font-size:1.05rem;list-style:none;display:flex;justify-content:space-between;align-items:center;}
details summary::after{content:"+";font-family:var(--serif);font-size:1.4rem;color:var(--accent);}
details[open] summary::after{content:"–";}
details p{margin-top:.7rem;color:var(--muted);max-width:640px;}

/* Contact */
#contact .contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:44px;margin-top:2rem;}
form{display:grid;gap:14px;}
label{font-size:.85rem;font-weight:600;display:block;margin-bottom:5px;}
input,select,textarea{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:6px;background:#fff;font-family:var(--sans);font-size:.98rem;color:var(--ink);}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);border-color:transparent;}
textarea{min-height:110px;resize:vertical;}
form .btn{border:none;cursor:pointer;width:100%;}
.contact-side p{margin-bottom:1.2rem;}
.hidden{display:none;}

/* Footer */
footer{border-top:1px solid var(--line);padding:36px 0;font-size:.88rem;color:var(--muted);}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}

/* FieldNotes index */
.page-head{padding:72px 0 8px;}
.page-head p{max-width:620px;color:var(--muted);font-size:1.1rem;}
.post-list{padding:40px 0 80px;}
.post-card{border:1px solid var(--line);background:var(--paper-dark);padding:26px 28px;border-radius:8px;margin-bottom:18px;}
.post-card .post-meta{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem;}
.post-card h3{font-size:1.35rem;margin-bottom:.5rem;}
.post-card h3 a{color:var(--ink);text-decoration:none;}
.post-card h3 a:hover{color:var(--accent);}
.post-card p{color:var(--muted);font-size:.98rem;margin-bottom:.8rem;}
.read-more{font-weight:600;font-size:.95rem;text-decoration:none;}

/* FieldNotes article */
.post{max-width:680px;margin:0 auto;padding:64px 24px 80px;}
.post .post-meta{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.6rem;}
.post h1{font-size:clamp(1.9rem,4.5vw,2.6rem);margin-bottom:1.6rem;}
.post-content p{margin-bottom:1.15rem;font-size:1.04rem;}
.post-content h2{font-size:1.35rem;margin:2rem 0 .6rem;}
.post-footer{margin-top:2.6rem;padding-top:1.4rem;border-top:1px solid var(--line);font-size:.95rem;color:var(--muted);}
.back-link{display:inline-block;margin-top:.6rem;font-weight:600;text-decoration:none;}

/* Responsive */
@media(max-width:720px){
  .offer-grid,.steps,#contact .contact-grid{grid-template-columns:1fr;}
  section{padding:56px 0;}
  .hero{padding:64px 0 56px;}
  .btn-row .btn{flex:1 1 100%;text-align:center;}
  h2{font-size:1.7rem;}
}
@media(max-width:540px){
  .logo{font-size:1.3rem;}
  .nav-right{gap:14px;}
  .nav-link{font-size:.85rem;}
  nav .cta-mini{padding:8px 12px;font-size:.8rem;}
  body{font-size:16px;}
}
