/* PlantLynk shared site chrome — ONE header, ONE drawer, ONE footer, injected
   by /app/site.js on every page (17 Jul, James: "I want all my links to look
   like these... one design, adjusted to work on mobile"). Change it here and
   every page changes together — pages can never drift apart again. */
:root{--pl-ink:#08171b;--pl-cream:#f5efe2;--pl-warm:#fffdf8;--pl-warm2:#f6f0e2;--pl-warm3:#ebe3d2;
--pl-safety:#ff5e3a;--pl-wa:#1f9d63;--pl-teal:#1a6b7a;--pl-line:#d6cdbb;--pl-muted:#4f5d57;--pl-muted2:#7c8a83;
--pl-disp:'Bricolage Grotesque',sans-serif;--pl-body:'Inter',sans-serif;--pl-mono:'JetBrains Mono',monospace;}

/* ── header ── */
.pl-sitehead{background:var(--pl-warm2);}
.pl-sitehead .in{max-width:1120px;margin:0 auto;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.pl-brand{font-family:var(--pl-disp);font-weight:800;font-size:19px;color:var(--pl-ink);letter-spacing:-.02em;text-decoration:none;}
.pl-brand em{font-style:italic;color:var(--pl-safety);}
.pl-nav{display:none;}
.pl-burger{width:40px;height:40px;border-radius:11px;border:1.5px solid var(--pl-line);background:var(--pl-warm);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--pl-ink);}
.pl-burger svg{display:block;}
@media(min-width:900px){
  .pl-sitehead .in{padding:20px 18px;}
  .pl-brand{font-size:23px;}
  .pl-burger{display:none;}
  .pl-nav{display:flex;gap:4px;align-items:center;}
  .pl-nav a{font-size:14.5px;font-weight:600;color:var(--pl-ink);text-decoration:none;padding:9px 13px;border-radius:10px;font-family:var(--pl-body);}
  .pl-nav a:hover{background:var(--pl-warm3);}
  .pl-nav a.join{background:var(--pl-safety);color:#fff;font-weight:700;margin-left:6px;}
  .pl-nav a.join:hover{background:#e94e2e;}
}

/* ── drawer (mobile) — the old left slide-in design James liked ── */
.pl-overlay{position:fixed;inset:0;z-index:90;background:rgba(8,23,27,.5);}
.pl-drawer{position:fixed;top:0;left:0;bottom:0;z-index:91;width:min(320px,86vw);background:var(--pl-warm);
  box-shadow:20px 0 60px -20px rgba(0,0,0,.4);display:flex;flex-direction:column;
  transform:translateX(-102%);transition:transform .22s ease;}
.pl-overlay.open .pl-drawer{transform:translateX(0);}
.pl-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;}
.pl-close{width:36px;height:36px;border-radius:10px;border:1px solid var(--pl-line);background:var(--pl-warm2);cursor:pointer;color:var(--pl-muted);font-size:15px;}
.pl-drawer-list{flex:1;overflow-y:auto;padding:4px 12px 12px;}
.pl-dnav{display:flex;align-items:center;gap:12px;padding:13px 12px;border-radius:12px;text-decoration:none;color:var(--pl-ink);font-weight:700;font-size:15px;font-family:var(--pl-body);}
.pl-dnav:hover,.pl-dnav:active{background:var(--pl-warm3);}
.pl-dnav.is-active{background:var(--pl-warm3);}
.pl-dnav .ic{width:34px;height:34px;border-radius:10px;background:var(--pl-warm2);border:1px solid var(--pl-line);display:flex;align-items:center;justify-content:center;font-size:15px;flex:none;}
.pl-dnav.accent .ic{background:var(--pl-safety);border-color:var(--pl-safety);color:#fff;}
.pl-dlabel{font-family:var(--pl-mono);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--pl-muted2);padding:14px 12px 4px;}
.pl-drawer-foot{padding:14px 18px;border-top:1px solid var(--pl-line);font-family:var(--pl-mono);font-size:10.5px;color:var(--pl-muted);line-height:1.8;}

/* ── footer ── */
.pl-sitefoot{border-top:1.5px solid var(--pl-line);margin-top:44px;padding:30px 18px 42px;background:var(--pl-warm2);font-family:var(--pl-body);}
.pl-footgrid{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:22px;}
.pl-footgrid h5{font-family:var(--pl-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--pl-muted2);margin:0 0 10px;}
.pl-footgrid a{display:block;font-size:14px;color:var(--pl-ink);text-decoration:none;padding:4px 0;}
.pl-footgrid a:hover{color:var(--pl-safety);}
.pl-footgrid .blurb{font-size:13.5px;color:var(--pl-muted);line-height:1.6;max-width:280px;margin:8px 0 0;}
.pl-footgrid .brandcol{grid-column:1 / -1;}
.pl-footbottom{max-width:1120px;margin:24px auto 0;font-family:var(--pl-mono);font-size:11px;color:var(--pl-muted2);line-height:1.8;}
@media(min-width:900px){
  .pl-footgrid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:26px;}
  .pl-footgrid .brandcol{grid-column:auto;}
}
