/* GoDig 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:#616d66;
--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:27px;color:var(--pl-ink);letter-spacing:-.03em;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:34px;}
  .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.signin{color:var(--pl-teal);font-weight:700;}
  .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:40px;height:40px;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:36px;height:36px;border-radius:10px;background:var(--pl-warm2);border:1px solid var(--pl-line);display:flex;align-items:center;justify-content:center;flex:none;color:var(--pl-ink);}
.pl-dnav .ic .pl-ic{width:20px;height:20px;}
.pl-dnav.is-active .ic{background:var(--pl-safety);border-color:var(--pl-safety);color:#fff;}
.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;}
}

/* ── background watermark (tyre tracks), injected by site.js — sits behind all
   content in the dead white space; opaque cards cover it. ── */
.pl-watermark{position:fixed;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;background:url('/wm/tracks-c.jpg') center/cover no-repeat;filter:sepia(1) saturate(1.6) brightness(1.02) contrast(1.05);mix-blend-mode:multiply;opacity:.11;}

/* ── floating bottom nav (mobile only) — Instagram-style frosted pill; the
   Menu item opens the full drawer. Hidden ≥900px where the inline nav shows. ── */
.pl-bottomnav{display:none;}
/* when a console opens a bottom sheet / modal (into #mount), hide the floating
   bar so it can never sit over the sheet's primary action (e.g. "Send quote"). */
html.pl-sheet-open .pl-bottomnav{display:none!important;}
@media(max-width:899px){
  .pl-bottomnav{display:flex;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:80;
    justify-content:space-around;align-items:center;gap:2px;padding:8px 8px;
    background:rgba(255,253,248,.80);-webkit-backdrop-filter:saturate(1.4) blur(18px);backdrop-filter:saturate(1.4) blur(18px);
    border:1px solid rgba(214,205,187,.55);border-radius:24px;box-shadow:0 14px 38px -16px rgba(8,23,27,.5),0 2px 8px -4px rgba(8,23,27,.25);}
  .pl-bn-item{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;
    background:none;border:0;cursor:pointer;text-decoration:none;color:var(--pl-muted2);
    font-family:var(--pl-mono);font-size:8.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 0;}
  .pl-bn-item .pl-ic{width:23px;height:23px;stroke-width:1.85;}
  .pl-bn-item.is-active{color:var(--pl-safety);}
  /* The 8.5px nav LABEL is small text (needs 4.5:1); brand orange #ff5e3a only
     hits ~2.9:1 on the cream bar. Darken just the label to #cf3a17 (4.7:1) — the
     icon above it keeps the bright orange (a >=23px graphic only needs 3:1). */
  .pl-bn-item.is-active span{color:#cf3a17;}
  .pl-bn-item.center{position:relative;}
  .pl-bn-item.center .pl-ic{width:52px;height:52px;padding:15px;border-radius:50%;background:var(--pl-safety);color:#fff;
    stroke-width:2;box-shadow:0 8px 20px -6px rgba(255,94,58,.75);margin-top:-24px;}
  .pl-bn-item.center span{color:#cf3a17;}
  /* keep page content clear of the floating bar */
  body{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px));}
  .pl-sitefoot{margin-bottom:0;}
  /* console mode: the app screens have their OWN dark header, so on mobile we
     drop the marketing header + footer (they doubled up) and let the console's
     header + this floating bar be the whole chrome. Desktop keeps them. */
  html.pl-console-mode .pl-sitehead,
  html.pl-console-mode .pl-sitefoot{display:none;}
  /* the owner console's in-page tab pills are redundant on mobile — the bottom
     bar drives the tabs there; keep the pills for desktop (bar is hidden). */
  .pl-consoletabs{display:none!important;}
  /* the console's own scroll body must clear the floating bar too */
  html.pl-console-mode #root{padding-bottom:calc(90px + env(safe-area-inset-bottom,0px));}
}
