/* South Jersey Land Buyers - shared site stylesheet (single source of truth).
   Theme B: Pinelands green/earth. Edit here once; every page updates together. */
:root{
  --forest:#1f3d0c; --pine:#2d5016; --leaf:#3B6D11; --moss:#5a8a2a;
  --sand:#faf8f3; --paper:#ffffff; --ink:#26261f; --muted:#5f5e58;
  --line:#e6e1d6; --gold:#b9821f; --gold-soft:#f6ecd8;
  --radius:10px; --maxw:1080px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--sand);line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--leaf)}
h1,h2,h3{line-height:1.2;font-weight:700;color:var(--forest);margin:0 0 .5em}
h1{font-size:2.1rem}
h2{font-size:1.5rem;font-weight:700}
h3{font-size:1.15rem}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:auto}
.skip:focus{left:12px;top:12px;background:#fff;padding:10px 14px;border-radius:8px;z-index:1000}
/* header */
header.site{background:var(--forest);position:sticky;top:0;z-index:50}
.nav{display:flex;align-items:center;justify-content:space-between;height:62px}
.brand{display:flex;align-items:center;gap:9px;color:#fff;text-decoration:none;font-weight:700;font-size:1.05rem}
.brand .mark{color:#9ccb5a}
.nav-links{display:flex;gap:22px;align-items:center}
.nav-links a{color:#e9efe0;text-decoration:none;font-size:.95rem}
.nav-links a:hover{color:#fff}
.nav-call{background:var(--moss);color:#fff;padding:8px 16px;border-radius:8px;text-decoration:none;font-weight:600;font-size:.95rem}
.menu-btn{display:none;background:none;border:0;color:#fff;font-size:1.6rem;cursor:pointer}
/* hero (home) */
.hero{background:linear-gradient(180deg,#244312,#1f3d0c)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:56px 20px}
.eyebrow{display:inline-block;background:rgba(156,203,90,.18);color:#cfe6a6;font-size:.8rem;font-weight:600;padding:5px 12px;border-radius:999px;letter-spacing:.3px;margin-bottom:16px}
.hero h1{color:#fff;font-size:2.5rem;margin-bottom:14px}
.hero p.lead{color:#dfe8d2;font-size:1.18rem;margin:0 0 26px;max-width:36ch}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border-radius:10px;text-decoration:none;font-weight:700;font-size:1.02rem;min-height:48px;border:0;cursor:pointer}
.btn-call{background:var(--moss);color:#fff}
.btn-call:hover{background:#67992f}
.btn-text{background:#eef3e3;color:var(--pine)}
.btn-text:hover{background:#fff}
.btn-gold{background:var(--gold);color:#fff}
.hero-trust{margin-top:22px;color:#bcd09c;font-size:.92rem;display:flex;align-items:center;gap:8px}
.hero-img{border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:#3a6a1e;aspect-ratio:4/3;display:flex;align-items:center;justify-content:center}
.hero-img img{width:100%;height:100%;object-fit:cover}
.hero-img .ph{color:#d6e9b6;text-align:center;padding:24px;font-size:.92rem;line-height:1.5}
.hero-img .ph .ph-ic{font-size:2rem;display:block;margin-bottom:8px}
/* inner page hero (compact) */
.page-hero{background:linear-gradient(180deg,#244312,#1f3d0c);color:#fff;padding:40px 0 44px}
.page-hero .eyebrow{margin-bottom:12px}
.page-hero h1{color:#fff;font-size:2.15rem;margin:0 0 12px;max-width:24ch}
.page-hero p{color:#dfe8d2;font-size:1.12rem;margin:0 0 22px;max-width:60ch}
.breadcrumb{font-size:.85rem;color:#9fb182;margin-bottom:14px}
.breadcrumb a{color:#cfe6a6;text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}
/* sections */
section{padding:54px 0}
.section-sand{background:var(--sand)}
.section-paper{background:var(--paper)}
.lead-in{max-width:62ch;color:var(--muted);margin:0 auto 36px;text-align:center;font-size:1.05rem}
.why-intro{max-width:66ch;margin:0 auto 40px;text-align:center}
.why-intro p{color:#3f3e36;font-size:1.1rem;line-height:1.65;margin:0 0 16px}
.center{text-align:center}
/* article / prose */
.article{padding:46px 0}
.prose{max-width:none}
.prose-wrap{max-width:760px;margin:0 auto;padding:0 20px}
.prose h2{margin-top:1.7em;font-size:1.45rem}
.prose h3{margin-top:1.4em;font-size:1.15rem;color:var(--pine)}
.prose p,.prose li{font-size:1.05rem;color:#34332c}
.prose ul,.prose ol{padding-left:1.2em}
.prose li{margin:.35em 0}
.prose strong{color:var(--ink)}
.prose a{color:var(--leaf)}
/* key takeaways */
.takeaways{background:var(--gold-soft);border:1px solid #ecdcb6;border-left:5px solid var(--gold);border-radius:8px;padding:20px 22px;margin:0 0 30px}
.takeaways h2{font-size:1.05rem;margin:0 0 10px;color:#7a5512;text-transform:none}
.takeaways ul{margin:0;padding-left:1.1em}
.takeaways li{margin:.3em 0;font-size:1rem;color:#4a4534}
/* note callout */
.note{background:#eef3e3;border-left:5px solid var(--moss);border-radius:8px;padding:16px 18px;margin:22px 0;font-size:1rem;color:#33402a}
/* byline + updated */
.byline{display:flex;align-items:center;gap:12px;margin:0 0 26px;font-size:.92rem;color:var(--muted)}
.byline .av{width:42px;height:42px;border-radius:50%;background:#eef3e3;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--moss);font-weight:700;flex:0 0 auto;font-size:.8rem}
.byline a{color:var(--leaf);text-decoration:none}
.updated{font-size:.85rem;color:var(--muted);margin:6px 0 0}
/* tables */
.tbl{width:100%;border-collapse:collapse;margin:22px 0;font-size:.97rem}
.tbl th,.tbl td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.tbl th{background:#eef3e3;color:var(--pine);font-weight:700}
.tbl tr:nth-child(even) td{background:#fbfaf6}
/* comparison table emphasis */
.ctable td.good{color:var(--leaf);font-weight:600}
.ctable td.bad{color:#9a4a2a}
/* sources */
.sources{margin-top:30px;padding-top:18px;border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}
.sources h2{font-size:1rem;margin:0 0 8px}
.sources li{margin:.2em 0}
.sources a{color:var(--leaf)}
/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:26px 22px}
.step .num{width:38px;height:38px;border-radius:50%;background:var(--gold-soft);color:var(--gold);font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.step h3{color:var(--pine)}
.step p{margin:0;color:var(--muted);font-size:.98rem}
/* value cards */
.values{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:880px;margin:0 auto}
.value{display:flex;gap:14px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.value .ic{flex:0 0 auto;width:42px;height:42px;border-radius:9px;background:#eef3e3;color:var(--leaf);display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.value h3{margin:0 0 4px;font-size:1.05rem;color:var(--pine)}
.value p{margin:0;color:var(--muted);font-size:.95rem}
/* counties */
.counties{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:760px;margin:0 auto}
.county-chip{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:9px 18px;text-decoration:none;color:var(--pine);font-weight:600;font-size:.95rem}
.county-chip:hover{border-color:var(--moss);background:#f3f7eb}
/* situations */
.sits{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:920px;margin:0 auto}
.sit{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;text-decoration:none;color:var(--ink);display:flex;justify-content:space-between;align-items:center;font-size:.97rem;font-weight:600}
.sit:hover{border-color:var(--moss);color:var(--leaf)}
/* form */
.form-section{background:var(--forest)}
.form-card{background:var(--paper);border-radius:16px;padding:32px;max-width:560px;margin:0 auto;box-shadow:0 10px 40px rgba(0,0,0,.18)}
.form-card h2{text-align:center}
.form-card .sub{text-align:center;color:var(--muted);margin:0 0 22px;font-size:.98rem}
.field{margin-bottom:14px}
.field label{display:block;font-weight:600;font-size:.9rem;margin-bottom:5px;color:var(--ink)}
.field input,.field textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:9px;font-size:1rem;font-family:inherit;background:#fcfbf7}
.field input:focus,.field textarea:focus{outline:2px solid var(--moss);border-color:var(--moss)}
.hp{position:absolute;left:-9999px}
.submit{width:100%;background:var(--moss);color:#fff;border:0;padding:15px;border-radius:10px;font-size:1.05rem;font-weight:700;cursor:pointer;min-height:50px}
.submit:hover{background:#67992f}
.micro{text-align:center;color:var(--muted);font-size:.85rem;margin:10px 0 0}
.or-text{text-align:center;margin:16px 0 0;font-size:.95rem;color:var(--muted)}
.or-text a{font-weight:700}
/* about teaser */
.about{display:grid;grid-template-columns:140px 1fr;gap:24px;align-items:center;max-width:780px;margin:0 auto}
.about .avatar{width:140px;height:140px;border-radius:50%;background:#eef3e3;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--moss);font-size:.85rem;text-align:center;padding:12px}
.about h2{margin-bottom:10px}
.about p{color:var(--muted);margin:0 0 12px}
.about .byline{font-size:.88rem;color:var(--muted)}
/* faq */
.faq{max-width:780px;margin:0 auto}
.qa{border-bottom:1px solid var(--line);padding:18px 0}
.qa h3{margin:0 0 8px;font-size:1.08rem;color:var(--pine)}
.qa p{margin:0;color:var(--muted);font-size:.98rem}
/* cta band */
.cta-band{background:linear-gradient(180deg,#2d5016,#1f3d0c);color:#fff;text-align:center;padding:48px 0}
.cta-band h2{color:#fff;margin:0 0 10px}
.cta-band p{color:#dfe8d2;max-width:54ch;margin:0 auto 22px}
.cta-band .cta-row{justify-content:center}
/* footer */
footer.site{background:var(--forest);color:#cdd9bd;padding:44px 0 96px;font-size:.92rem}
footer.site a{color:#e9efe0;text-decoration:none}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1.2fr 1fr;gap:28px;margin-bottom:26px}
.foot-grid h4{color:#fff;font-size:.95rem;margin:0 0 12px}
.foot-grid ul{list-style:none;margin:0;padding:0;line-height:2}
.legal{border-top:1px solid rgba(255,255,255,.13);padding-top:18px;color:#9fb182;font-size:.82rem}
/* sticky mobile bar */
.mobile-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:90;background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 16px rgba(0,0,0,.1)}
.mobile-bar a{flex:1;text-align:center;padding:14px 0;text-decoration:none;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:7px;min-height:54px}
.mobile-bar .mb-call{background:var(--moss);color:#fff}
.mobile-bar .mb-text{background:#fff;color:var(--pine)}
@media(max-width:860px){
  .hero-grid{grid-template-columns:1fr;padding:34px 20px;gap:28px}
  .hero h1{font-size:2rem}
  .page-hero h1{font-size:1.8rem}
  .steps,.values,.sits{grid-template-columns:1fr}
  .about{grid-template-columns:1fr;text-align:center}
  .about .avatar{margin:0 auto}
  .foot-grid{grid-template-columns:1fr}
  .nav-links{display:none}
  .menu-btn{display:block}
  .mobile-bar{display:flex}
}
