@import url('https://fonts.googleapis.com/css2?family=Bitter:wght@700;900&family=Nunito+Sans:wght@400;600;700&display=swap');

:root {
  --green:      #1b6b3a;
  --green-dark: #134d2a;
  --green-pale: #edf7f1;
  --accent:     #a4d65e;
  --sun:        #f0c93b;
  --soil:       #3e2c1a;
  --wa:         #25D366;
  --white:      #fffdf8;
  --sand:       #f5f0e8;
  --border:     #e0dbd2;
  --text:       #2a2318;
  --muted:      #6b6358;
  --r:          10px;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'Nunito Sans',sans-serif; color:var(--text); background:var(--white); line-height:1.6; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
ul { list-style:none; }
h1,h2,h3,h4 { font-family:'Bitter',serif; line-height:1.1; }

/* NAV */
.nav {
  position:fixed; top:0; left:0; right:0; z-index:100;
  height:60px; padding:0 28px;
  display:flex; align-items:center; justify-content:space-between;
  background:rgba(255,253,248,.95); backdrop-filter:blur(10px);
  border-bottom:1px solid transparent; transition:border-color .3s;
}
.nav.scrolled { border-bottom-color:var(--border); }
.nav-logo { font-family:'Bitter',serif; font-weight:900; font-size:16px; color:var(--green-dark); }
.nav-logo span { color:var(--accent); }
.nav-links { display:flex; align-items:center; gap:4px; }
.nav-links a { font-size:14px; font-weight:600; color:var(--muted); padding:6px 12px; border-radius:7px; transition:color .15s, background .15s; }
.nav-links a:hover, .nav-links a.active { color:var(--green); background:var(--green-pale); }
.nav-links .nav-cta { background:var(--green); color:#fff; }
.nav-links .nav-cta:hover { background:var(--green-dark); }
.burger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:4px; }
.burger span { display:block; width:22px; height:2px; background:var(--text); border-radius:2px; }
.mob-nav { display:none; position:fixed; top:60px; left:0; right:0; background:var(--white); border-bottom:1px solid var(--border); padding:12px 20px 16px; flex-direction:column; gap:4px; z-index:99; box-shadow:0 8px 24px rgba(0,0,0,.08); }
.mob-nav.open { display:flex; }
.mob-nav a { font-size:15px; font-weight:600; color:var(--muted); padding:10px 12px; border-radius:8px; }
.mob-nav a:hover { background:var(--green-pale); color:var(--green); }
.mob-nav .mob-cta { background:var(--green); color:#fff!important; text-align:center; margin-top:6px; border-radius:8px; }
@media(max-width:640px) { .nav-links { display:none; } .burger { display:flex; } }

/* BUTTONS */
.btn { display:inline-flex; align-items:center; gap:7px; padding:13px 26px; border-radius:var(--r); font-size:15px; font-weight:700; font-family:'Nunito Sans',sans-serif; cursor:pointer; border:none; transition:transform .15s, box-shadow .2s, opacity .15s; white-space:nowrap; }
.btn:hover { transform:translateY(-1px); }
.btn-yellow { background:var(--sun); color:var(--soil); box-shadow:0 3px 16px rgba(240,201,59,.3); }
.btn-yellow:hover { box-shadow:0 6px 24px rgba(240,201,59,.4); }
.btn-green { background:var(--green); color:#fff; box-shadow:0 3px 14px rgba(27,107,58,.2); }
.btn-green:hover { background:var(--green-dark); }
.btn-ghost { background:rgba(255,255,255,.13); color:#fff; border:1px solid rgba(255,255,255,.2); backdrop-filter:blur(4px); }
.btn-ghost:hover { background:rgba(255,255,255,.2); }
.btn-outline { background:transparent; color:var(--green); border:2px solid var(--green); }
.btn-outline:hover { background:var(--green-pale); }
.btn-wa { background:var(--wa); color:#fff; }

/* LAYOUT */
.wrap { max-width:960px; margin:0 auto; padding:0 24px; }
section { padding:72px 0; }

/* =============================================
   HOME HERO — rich conversion-focused landing
   ============================================= */
.hero-home {
  position:relative;
  min-height:100vh;
  padding:120px 24px 80px;
  background:linear-gradient(150deg, var(--green-dark) 0%, #1e7a42 55%, #2a9655 100%);
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
/* Subtle dot-grid texture */
.hero-home::before {
  content:'';
  position:absolute; inset:0;
  background-image:radial-gradient(circle, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size:28px 28px;
  pointer-events:none;
}
/* Bottom wave */
.hero-home::after {
  content:'';
  position:absolute; bottom:-1px; left:0; right:0; height:80px;
  background:var(--white);
  clip-path:ellipse(56% 100% at 50% 100%);
  z-index:2;
}
/* Decorative blobs */
.hero-home .blob1 {
  position:absolute; top:-120px; right:-80px;
  width:480px; height:480px; border-radius:50%;
  background:radial-gradient(circle, rgba(164,214,94,.15) 0%, transparent 70%);
  pointer-events:none;
}
.hero-home .blob2 {
  position:absolute; bottom:60px; left:-120px;
  width:380px; height:380px; border-radius:50%;
  background:radial-gradient(circle, rgba(240,201,59,.08) 0%, transparent 70%);
  pointer-events:none;
}

.hero-home-inner {
  position:relative; z-index:3;
  max-width:820px; width:100%;
  display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center;
}
.hero-home-left { text-align:left; }
.hero-label {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.15);
  color:var(--accent); font-size:11px; font-weight:700; letter-spacing:2.5px;
  text-transform:uppercase; padding:6px 16px; border-radius:20px; margin-bottom:24px;
}
.hero-home h1 {
  font-size:clamp(30px,4.5vw,50px); font-weight:900; color:#fff;
  margin-bottom:18px; line-height:1.05;
}
.hero-home h1 em { color:var(--accent); font-style:normal; }
.hero-home .hero-sub {
  font-size:clamp(15px,1.8vw,17px); color:rgba(255,255,255,.75);
  margin-bottom:32px; line-height:1.7; max-width:420px;
}
.hero-home-btns { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:36px; }
.hero-trust-row {
  display:flex; flex-wrap:wrap; gap:10px 20px;
  padding-top:22px; border-top:1px solid rgba(255,255,255,.1);
}
.hero-trust-item {
  display:flex; align-items:center; gap:6px;
  font-size:12px; font-weight:600; color:rgba(255,255,255,.65);
}
.hero-trust-item::before {
  content:'✓'; width:18px; height:18px; border-radius:50%;
  background:rgba(164,214,94,.2); border:1px solid rgba(164,214,94,.3);
  color:var(--accent); font-size:10px;
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}

/* Hero right: role picker card */
.hero-picker {
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px; padding:28px 24px;
  backdrop-filter:blur(12px);
}
.hero-picker h3 {
  font-family:'Bitter',serif; font-size:15px; font-weight:900;
  color:rgba(255,255,255,.9); margin-bottom:6px; letter-spacing:.3px;
}
.hero-picker p { font-size:13px; color:rgba(255,255,255,.5); margin-bottom:20px; }
.picker-card {
  display:block; background:rgba(255,255,255,.06); border:1.5px solid rgba(255,255,255,.1);
  border-radius:12px; padding:18px 18px; margin-bottom:10px;
  transition:background .2s, border-color .2s, transform .15s;
  cursor:pointer;
}
.picker-card:last-of-type { margin-bottom:0; }
.picker-card:hover { background:rgba(255,255,255,.12); border-color:rgba(164,214,94,.4); transform:translateY(-2px); }
.picker-card-top { display:flex; align-items:center; gap:12px; margin-bottom:6px; }
.picker-icon { width:40px; height:40px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:20px; flex-shrink:0; }
.picker-icon.buy-icon { background:rgba(240,201,59,.2); }
.picker-icon.sell-icon { background:rgba(164,214,94,.15); }
.picker-card h4 { font-family:'Bitter',serif; font-size:15px; color:#fff; font-weight:900; }
.picker-card p { font-size:13px; color:rgba(255,255,255,.55); margin:0; line-height:1.4; }
.picker-arrow {
  display:flex; align-items:center; justify-content:space-between;
  margin-top:12px; padding-top:10px; border-top:1px solid rgba(255,255,255,.08);
  font-size:12px; font-weight:700; color:var(--accent); letter-spacing:.5px;
}

/* Stat row on homepage */
.stat-row {
  background:var(--green-dark);
  padding:22px 24px;
  display:flex; align-items:center; justify-content:center;
  gap:40px; flex-wrap:wrap;
}
.stat-item { text-align:center; }
.stat-num { font-family:'Bitter',serif; font-size:26px; font-weight:900; color:var(--sun); line-height:1; margin-bottom:3px; }
.stat-label { font-size:11px; font-weight:600; color:rgba(255,255,255,.45); text-transform:uppercase; letter-spacing:1.5px; }
.stat-divider { width:1px; height:40px; background:rgba(255,255,255,.1); }
@media(max-width:580px) { .stat-divider { display:none; } .stat-row { gap:24px; } }

/* =============================================
   STANDARD HERO (inner pages)
   ============================================= */
.hero {
  position:relative;
  padding:120px 24px 100px;
  background:linear-gradient(160deg, var(--green-dark) 0%, var(--green) 60%, #27874b 100%);
  text-align:center;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.hero::after { content:''; position:absolute; bottom:-1px; left:0; right:0; height:64px; background:var(--white); clip-path:ellipse(56% 100% at 50% 100%); z-index:2; }
.hero.farm   { background:linear-gradient(160deg,rgba(19,77,42,.92) 0%,rgba(27,107,58,.87) 60%,rgba(39,135,75,.82) 100%), url('https://images.unsplash.com/photo-1500382017468-9049fed747ef?w=1400&q=70') center/cover no-repeat; }
.hero.ship   { background:linear-gradient(160deg,rgba(19,77,42,.9)  0%,rgba(27,107,58,.85) 60%,rgba(39,135,75,.8)  100%), url('https://images.unsplash.com/photo-1586528116311-ad8dd3c8310d?w=1400&q=70') center/cover no-repeat; }
.hero-inner  { position:relative; z-index:1; max-width:640px; padding-bottom:40px; }
.hero-label  { display:inline-block; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.15); color:var(--accent); font-size:11px; font-weight:700; letter-spacing:2.5px; text-transform:uppercase; padding:6px 16px; border-radius:20px; margin-bottom:22px; }
.hero h1     { font-size:clamp(28px,5.5vw,52px); font-weight:900; color:#fff; margin-bottom:16px; }
.hero h1 em  { color:var(--accent); font-style:normal; }
.hero p      { font-size:clamp(15px,2vw,17px); color:rgba(255,255,255,.75); max-width:500px; margin:0 auto 28px; line-height:1.65; }
.hero-btns   { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; margin-bottom:28px; }
.hero-pills  { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 16px; padding-top:20px; border-top:1px solid rgba(255,255,255,.12); }
.hero-pill   { display:flex; align-items:center; gap:6px; font-size:13px; font-weight:600; color:rgba(255,255,255,.78); }
.hero-pill::before { content:'✓'; width:18px; height:18px; border-radius:50%; background:rgba(164,214,94,.2); border:1px solid rgba(164,214,94,.3); color:var(--accent); font-size:10px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }

@media(max-width:640px) { .hero { padding:96px 20px 88px; } .hero-btns { flex-direction:column; align-items:center; } .hero-btns .btn { width:100%; max-width:300px; justify-content:center; } }

/* SECTION HEADINGS */
.eyebrow { font-family:'Bitter',serif; font-size:11px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--green); margin-bottom:8px; }
h2.title { font-size:clamp(22px,3.5vw,32px); font-weight:900; margin-bottom:12px; }
p.subtitle { font-size:15px; color:var(--muted); max-width:520px; line-height:1.7; margin-bottom:32px; }
.center { text-align:center; }
.center p.subtitle { margin-left:auto; margin-right:auto; }

/* CARDS */
.cards-2 { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.cards-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.card { background:var(--white); border:1px solid var(--border); border-radius:14px; padding:24px; }
.card-icon { font-size:24px; margin-bottom:12px; width:48px; height:48px; display:flex; align-items:center; justify-content:center; background:var(--green-pale); border-radius:10px; }
.card h4 { font-size:15px; font-weight:700; margin-bottom:6px; }
.card p { font-size:14px; color:var(--muted); line-height:1.55; }

/* STEPS */
.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.step { border-radius:14px; background:var(--white); border:1px solid var(--border); padding:28px 20px 22px; text-align:center; }
.step-n { width:44px; height:44px; border-radius:50%; background:var(--green); color:#fff; font-family:'Bitter',serif; font-size:19px; font-weight:900; display:inline-flex; align-items:center; justify-content:center; margin-bottom:12px; }
.step h4 { font-size:15px; font-weight:700; margin-bottom:6px; }
.step p  { font-size:13px; color:var(--muted); line-height:1.5; }

/* PRODUCE GRID */
.produce-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.p-card { border-radius:14px; border:1px solid var(--border); overflow:hidden; background:var(--white); }
.p-card.active { border-color:var(--green); }
.p-img { height:160px; display:flex; align-items:center; justify-content:center; overflow:hidden; position:relative; background:var(--green-pale); }
.p-img img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; }
.p-body { padding:16px 18px 18px; }
.p-tag { display:inline-block; font-size:11px; font-weight:700; letter-spacing:.6px; text-transform:uppercase; padding:3px 10px; border-radius:20px; margin-bottom:8px; }
.tag-now  { background:var(--green-pale); color:var(--green); }
.tag-soon { background:#f3ede2; color:#8b7355; }
.p-body h4 { font-size:15px; font-weight:700; margin-bottom:4px; }
.p-body p  { font-size:13px; color:var(--muted); line-height:1.5; }
.soon-over { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(62,44,26,.03); }
.soon-badge { background:rgba(255,253,248,.92); border:1px solid var(--border); border-radius:6px; font-size:12px; font-weight:700; color:#8b7355; padding:6px 14px; }

/* NOTIFY */
.notify { background:var(--green-dark); padding:52px 24px; text-align:center; }
.notify h2 { font-size:clamp(18px,3vw,26px); font-weight:900; color:#fff; margin-bottom:8px; }
.notify p  { font-size:15px; color:rgba(255,255,255,.6); margin-bottom:22px; }
.notify-row { display:flex; gap:8px; max-width:400px; margin:0 auto; flex-wrap:wrap; }
.notify-row input { flex:1; min-width:180px; padding:12px 14px; border-radius:var(--r); font-size:14px; font-family:inherit; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.15); color:#fff; }
.notify-row input::placeholder { color:rgba(255,255,255,.4); }
.notify-row input:focus { outline:none; border-color:rgba(255,255,255,.35); }
.notify-row button { padding:12px 20px; background:var(--sun); color:var(--soil); border:none; border-radius:var(--r); font-size:14px; font-weight:700; font-family:inherit; cursor:pointer; }
.notify-note { margin-top:10px; font-size:12px; color:rgba(255,255,255,.35); }

/* FORMS */
.form-bg { background:var(--sand); }
.form-box { background:var(--white); border:1px solid var(--border); border-radius:16px; padding:32px 28px; max-width:520px; margin:0 auto; box-shadow:0 4px 20px rgba(0,0,0,.06); }
.form-box h3 { font-size:18px; font-weight:900; margin-bottom:4px; }
.form-box .sub { font-size:14px; color:var(--muted); margin-bottom:22px; }
.field { margin-bottom:14px; }
.field label { display:block; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.3px; color:var(--muted); margin-bottom:5px; }
.field input, .field select, .field textarea { width:100%; padding:11px 13px; border:1.5px solid var(--border); border-radius:var(--r); font-size:14px; font-family:inherit; color:var(--text); background:var(--white); transition:border-color .2s; appearance:none; }
.field input:focus, .field select:focus, .field textarea:focus { outline:none; border-color:var(--green); }
.field textarea { min-height:90px; resize:vertical; }
.row-2 { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.submit { width:100%; padding:14px; background:var(--green); color:#fff; border:none; border-radius:var(--r); font-size:15px; font-weight:700; font-family:inherit; cursor:pointer; margin-top:6px; transition:background .2s; }
.submit:hover { background:var(--green-dark); }
.form-note { text-align:center; font-size:13px; color:var(--muted); margin-top:12px; }
.form-note a { color:var(--green); font-weight:700; }
.form-hints { display:flex; justify-content:center; gap:16px; margin-top:12px; flex-wrap:wrap; }
.hint { font-size:12px; color:var(--muted); display:flex; align-items:center; gap:4px; }
.hint::before { content:''; width:5px; height:5px; border-radius:50%; background:var(--green); flex-shrink:0; }
.form-success { display:none; text-align:center; padding:36px 16px; }
.form-success.show { display:block; }
.tick { width:60px; height:60px; border-radius:50%; background:var(--green); color:#fff; font-size:26px; display:inline-flex; align-items:center; justify-content:center; margin-bottom:14px; }
.form-success h3 { font-size:20px; font-weight:900; color:var(--green); margin-bottom:8px; }
.form-success p { font-size:14px; color:var(--muted); }
.hidden { display:none!important; }

/* CTA BAR */
.cta-bar { background:var(--green-dark); padding:56px 24px; text-align:center; }
.cta-bar h2 { font-size:clamp(20px,3.5vw,30px); font-weight:900; color:#fff; margin-bottom:10px; }
.cta-bar p  { font-size:15px; color:rgba(255,255,255,.6); margin-bottom:24px; }
.cta-btns   { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }

/* SPLIT CTA — used on sell page */
.cta-split {
  background:var(--green-dark);
  padding:60px 24px;
}
.cta-split-inner {
  max-width:860px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr; gap:14px;
}
.cta-split-card {
  background:rgba(255,255,255,.06);
  border:1.5px solid rgba(255,255,255,.1);
  border-radius:14px; padding:28px 24px; text-align:center;
}
.cta-split-card h3 { font-family:'Bitter',serif; font-size:18px; color:#fff; margin-bottom:8px; }
.cta-split-card p { font-size:14px; color:rgba(255,255,255,.55); margin-bottom:20px; }
@media(max-width:580px) { .cta-split-inner { grid-template-columns:1fr; } }

/* TRUST BAR */
.trust-bar { background:var(--green-dark); padding:16px 24px; display:flex; align-items:center; justify-content:center; gap:28px; flex-wrap:wrap; }
.tb-item { display:flex; align-items:center; gap:7px; font-size:13px; font-weight:600; color:rgba(255,255,255,.7); }

/* WA FLOAT */
.wa-btn { position:fixed; bottom:22px; right:22px; z-index:90; width:54px; height:54px; border-radius:50%; background:var(--wa); color:#fff; display:flex; align-items:center; justify-content:center; font-size:24px; box-shadow:0 4px 18px rgba(37,211,102,.4); transition:transform .2s; }
.wa-btn:hover { transform:scale(1.08); }

/* TESTIMONIALS */
.testimonials-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.testi-card {
  background:var(--white); border:1px solid var(--border); border-radius:14px; padding:24px;
  position:relative;
}
.testi-stars { color:#D4A017; font-size:15px; letter-spacing:1px; margin-bottom:12px; }
.testi-card blockquote { font-size:14px; font-style:italic; color:var(--text); line-height:1.6; margin-bottom:16px; }
.testi-author { display:flex; align-items:center; gap:10px; }
.testi-avatar { width:36px; height:36px; border-radius:50%; background:var(--green-pale); display:flex; align-items:center; justify-content:center; font-size:18px; flex-shrink:0; }
.testi-name { font-size:14px; font-weight:700; }
.testi-role { font-size:12px; color:var(--muted); }

/* FOOTER */
footer { background:var(--soil); padding:48px 24px 28px; }
.f-grid { max-width:920px; margin:0 auto 36px; display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:36px; }
.f-name { font-family:'Bitter',serif; font-size:17px; font-weight:900; color:#fff; margin-bottom:2px; }
.f-name span { color:var(--accent); }
.f-tag  { font-size:9px; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,.3); margin-bottom:12px; }
.f-desc { font-size:13px; color:rgba(255,255,255,.45); line-height:1.65; }
.f-col h5 { font-size:10px; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:rgba(255,255,255,.35); margin-bottom:12px; }
.f-col a  { display:block; font-size:13px; color:rgba(255,255,255,.55); margin-bottom:7px; transition:color .15s; }
.f-col a:hover { color:#fff; }
.f-bottom { max-width:920px; margin:0 auto; border-top:1px solid rgba(255,255,255,.07); padding-top:20px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; }
.f-bottom p, .f-bottom a { font-size:12px; color:rgba(255,255,255,.3); }
.f-bottom a:hover { color:rgba(255,255,255,.7); }

/* REVEAL */
.rv { opacity:0; transform:translateY(16px); transition:opacity .6s ease, transform .6s ease; }
.rv.in { opacity:1; transform:translateY(0); }

/* RESPONSIVE */
@media(max-width:820px) {
  .hero-home-inner { grid-template-columns:1fr; gap:32px; }
  .hero-home-left { text-align:center; }
  .hero-home .hero-sub { margin:0 auto 32px; }
  .hero-home-btns { justify-content:center; }
  .hero-trust-row { justify-content:center; }
  .cards-3, .produce-grid { grid-template-columns:1fr 1fr; }
  .f-grid { grid-template-columns:1fr 1fr; }
  .testimonials-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:580px) {
  .hero-home { padding:80px 20px 60px; min-height:auto; }
  .cards-2, .cards-3, .produce-grid, .steps, .testimonials-grid { grid-template-columns:1fr; }
  .row-2 { grid-template-columns:1fr; }
  .form-box { padding:22px 16px; }
  .f-grid { grid-template-columns:1fr 1fr; gap:24px; }
  .trust-bar { gap:14px; }
  .stat-row { gap:20px; }
}
@media(max-width:400px) { .f-grid { grid-template-columns:1fr; } .f-bottom { flex-direction:column; text-align:center; } }
