/* ═══════════════════════════════════════════════════
   SmartFarm Shared CSS — applies to all pages
═══════════════════════════════════════════════════ */
:root {
  --g900:#0f2006;--g800:#1a3308;--g700:#2d5a0f;--g600:#3b6d11;
  --g500:#4d8c16;--g400:#639922;--g300:#7db82e;--g200:#a8d45e;
  --g100:#d4edab;--g50:#f0f9e0;
  --ink:#080c06;--k900:#111410;--k800:#1e2318;--k700:#2e332c;
  --k600:#434840;--k500:#5a5f58;--k400:#7a7f78;--k300:#9ea39c;
  --k200:#c8ccc6;--k100:#e2e5e0;--k50:#f4f5f2;--white:#ffffff;
  --cream:#f7f8f4;
  --gold:#c9a84c;--gold-l:#f0d990;--gold-d:#9a7a20;--gold-bg:#fffbee;--gold-trim:#b8952a;
  --red:#c53030;--red-l:#e04040;--red-bg:#fff8f8;--red-trim:#dc3545;
  --grn:#2a7a1c;--grn-l:#339922;--grn-bg:#f3fbee;--grn-trim:#3b8c22;
  --lux:#9a7a20;--lux-l:#c9a84c;--lux-bg:#fffbee;--lux-trim:#b8952a;
  --display:'DM Serif Display',serif;
  --body:'DM Sans',sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
body{font-family:var(--body);overflow-x:hidden}

/* ── SHARED NAV ── */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:300;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 36px;height:56px;
  background:rgba(8,12,6,.94);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(255,255,255,.07);
  transition:background .3s;
}
.wordmark{
  font-family:var(--body);font-weight:700;font-size:14px;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--white);text-decoration:none;
  display:flex;align-items:center;gap:9px;
}
.wm-icon{
  width:26px;height:26px;border-radius:6px;
  background:linear-gradient(135deg,var(--g600),var(--g400));
  display:flex;align-items:center;justify-content:center;font-size:13px;
}
.wordmark em{color:var(--g300);font-style:normal}
.nav-links{display:flex;align-items:center}
.nav-link{
  background:none;border:none;cursor:pointer;text-decoration:none;
  font-family:var(--body);font-size:13px;font-weight:500;
  color:rgba(255,255,255,.45);padding:0 16px;height:56px;
  display:flex;align-items:center;transition:color .18s;
}
.nav-link:hover{color:rgba(255,255,255,.85)}
.nav-link.active{color:var(--white);border-bottom:2px solid var(--g400)}
.nav-right{display:flex;align-items:center;gap:10px}
.nav-login{
  font-family:var(--body);font-size:13px;font-weight:500;
  color:rgba(255,255,255,.45);text-decoration:none;padding:0 12px;transition:color .18s;
}
.nav-login:hover{color:var(--white)}
.nav-cta{
  background:var(--g600);color:white;border:none;
  padding:8px 18px;border-radius:20px;
  font-family:var(--body);font-size:13px;font-weight:700;
  cursor:pointer;transition:all .18s;text-decoration:none;
}
.nav-cta:hover{background:var(--g500)}
.nav-toggle{
  display:none;background:none;border:none;cursor:pointer;
  flex-direction:column;gap:5px;padding:4px;
}
.nav-toggle span{display:block;width:22px;height:2px;background:rgba(255,255,255,.6);border-radius:1px}

/* ── SHARED BUTTONS ── */
.btn-primary{
  background:var(--g600);color:white;border:none;
  padding:13px 26px;border-radius:10px;
  font-family:var(--body);font-size:14px;font-weight:700;
  cursor:pointer;transition:all .2s;text-decoration:none;
  display:inline-flex;align-items:center;gap:7px;
}
.btn-primary:hover{background:var(--g500);transform:translateY(-1px);box-shadow:0 6px 20px rgba(59,109,17,.4)}
.btn-secondary{
  background:rgba(255,255,255,.07);color:rgba(255,255,255,.8);
  border:1.5px solid rgba(255,255,255,.15);
  padding:13px 26px;border-radius:10px;
  font-family:var(--body);font-size:14px;font-weight:600;
  cursor:pointer;transition:all .2s;text-decoration:none;
  display:inline-flex;align-items:center;gap:7px;
}
.btn-secondary:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3);color:white}
.btn-secondary.dark{
  background:transparent;color:var(--k600);
  border-color:var(--k200);
}
.btn-secondary.dark:hover{border-color:var(--k400);color:var(--ink);background:transparent}

/* ── SHARED SECTION UTILS ── */
.section-inner{max-width:1140px;margin:0 auto}
.section-eyebrow{
  display:inline-block;
  font-size:11px;font-weight:700;letter-spacing:.7px;text-transform:uppercase;
  color:var(--g600);background:var(--g50);
  border:1px solid var(--g100);border-radius:20px;padding:4px 14px;margin-bottom:18px;
}
.section-eyebrow.dark{color:var(--g200);background:rgba(97,153,34,.1);border-color:rgba(97,153,34,.2)}
.section-h2{
  font-family:var(--display);font-size:clamp(28px,3.5vw,44px);
  font-weight:400;color:var(--ink);line-height:1.15;letter-spacing:-.3px;margin-bottom:14px;
}
.section-h2.white{color:var(--white)}
.section-h2 em{color:var(--g600);font-style:italic}
.section-h2.white em{color:var(--g300)}
.section-sub{font-size:15px;color:var(--k400);line-height:1.7;max-width:520px}
.section-sub.white{color:rgba(255,255,255,.45)}

/* ── SHARED FOOTER ── */
.footer{background:var(--k900);padding:48px 36px 28px;border-top:1px solid rgba(255,255,255,.06)}
.footer-inner{max-width:1140px;margin:0 auto}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:36px}
.footer-wm{font-family:var(--body);font-weight:700;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--white);display:flex;align-items:center;gap:8px;margin-bottom:9px}
.footer-wm em{color:var(--g300);font-style:normal}
.footer-tagline{font-size:13px;color:rgba(255,255,255,.3);line-height:1.6;max-width:240px}
.footer-col-title{font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:rgba(255,255,255,.25);margin-bottom:12px}
.footer-links{list-style:none}
.footer-links li{margin-bottom:7px}
.footer-links a{font-size:13px;color:rgba(255,255,255,.4);text-decoration:none;transition:color .15s}
.footer-links a:hover{color:rgba(255,255,255,.8)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:22px;border-top:1px solid rgba(255,255,255,.06);font-size:12px;color:rgba(255,255,255,.22)}

/* Mobile nav */
@media(max-width:768px){
  .nav{padding:0 20px}
  .nav-links{
    display:none;flex-direction:column;position:absolute;
    top:56px;left:0;right:0;background:var(--ink);
    border-bottom:1px solid rgba(255,255,255,.07);padding:12px 0;
  }
  .nav-links.open{display:flex}
  .nav-link{height:42px;padding:0 24px;width:100%}
  .nav-toggle{display:flex}
  .nav-login{display:none}
  .footer-top{grid-template-columns:1fr 1fr}
  .footer-bottom{flex-direction:column;gap:6px;text-align:center}
}
@media(max-width:480px){
  .footer-top{grid-template-columns:1fr}
}
