/* ═══════════════════════════════════════════════════════════════
   LIVEWORKLOCAL — site styles, derived from UI Kit v3 (day theme)
   Depth from light and blur, never from colour.
   ═══════════════════════════════════════════════════════════════ */
.lwl{
  --bg:#FAF9F6; --bg-2:#F4F2ED;
  --row:#FFFAF3; --row-hover:#F8F1E6; --row-sunk:#F2EADD;
  --glass-1:rgba(255,255,255,.5); --glass-2:rgba(255,255,255,.68); --glass-3:rgba(255,255,255,.82);
  --stroke:rgba(27,36,48,.10); --stroke-strong:rgba(255,255,255,.92); --stroke-quiet:rgba(27,36,48,.06);
  --t1:#141D1C; --t2:#5F6B78; --t3:#8A9490;
  --accent:#0F766E; --accent-2:#12655E;
  --accent-soft:rgba(15,118,110,.12); --accent-line:rgba(15,118,110,.3);
  --ok:#0F766E; --warn:#9A7418; --bad:#B44E42; --coin:#C05A25;
  --blur-pane:blur(14px) saturate(150%);
  --blur-panel:blur(24px) saturate(160%);
  --blur-float:blur(40px) saturate(180%);
  --lift-1:0 1px 0 0 rgba(255,255,255,.85) inset, 0 4px 14px -6px rgba(40,34,24,.2);
  --lift-2:0 1px 0 0 rgba(255,255,255,.92) inset, 0 18px 40px -18px rgba(40,34,24,.26);
  --lift-3:0 1px 0 0 rgba(255,255,255,.95) inset, 0 36px 80px -28px rgba(40,34,24,.34);
  --glow:0 10px 26px -10px rgba(15,118,110,.4);
  --r-sm:10px; --r-md:14px; --r-lg:20px; --r-xl:26px;
  --fast:150ms cubic-bezier(.4,0,.2,1);
  --ease:340ms cubic-bezier(.16,1,.3,1);
  /* dark band tokens */
  --band:#0F2B26; --band-2:#0A1F1B;
  --band-row:rgba(255,255,255,.05); --band-stroke:rgba(255,255,255,.12);
  --band-t1:#E9F2F0; --band-t2:#93A7A4;
}
.lwl,.lwl *{box-sizing:border-box}
.lwl{
  position:relative;min-height:100vh;background:var(--bg);color:var(--t1);
  font-family:"Instrument Sans",system-ui,sans-serif;font-size:15px;line-height:1.55;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;margin:0;
}
.lwl::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(900px 620px at 12% -8%, rgba(95,180,168,.16), transparent 60%),
    radial-gradient(800px 600px at 88% 6%, rgba(240,180,41,.08), transparent 62%);
}
.lwl>*{position:relative;z-index:1}
.lwl button{font-family:inherit;cursor:pointer;color:inherit;border:0;background:none}
.lwl a{color:inherit}
.lwl :where(a,button,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}

/* MATERIAL */
.glass{position:relative;background:var(--glass-1);border:1px solid var(--stroke);border-radius:var(--r-lg);
  backdrop-filter:var(--blur-panel);-webkit-backdrop-filter:var(--blur-panel);box-shadow:var(--lift-2);overflow:hidden}
.glass::before{content:"";position:absolute;inset:0 0 auto;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--stroke-strong) 22%,var(--stroke-strong) 78%,transparent)}
.solid{background:var(--row);border:1px solid var(--stroke);border-radius:var(--r-md);box-shadow:var(--lift-1)}

/* TYPE */
.lwl h1,.lwl h2,.lwl h3,.lwl h4{font-family:"Familjen Grotesk",sans-serif;letter-spacing:-.028em;line-height:1.07;margin:0}
.lwl h1{font-size:clamp(34px,5.6vw,60px);font-weight:700}
.lwl h2{font-size:clamp(23px,3vw,31px);font-weight:600;letter-spacing:-.024em}
.lwl h3{font-size:18px;font-weight:600;letter-spacing:-.018em}
.lwl p{margin:0}
.eyebrow{font-family:"JetBrains Mono",monospace;font-size:10.5px;font-weight:500;letter-spacing:.16em;
  text-transform:uppercase;color:var(--t3)}
.eyebrow.accent{color:var(--accent)}
.lede{color:var(--t2);font-size:16px;max-width:64ch;line-height:1.62}
.muted{color:var(--t2)} .dim{color:var(--t3)} .tiny{font-size:12.5px}
.wordmark{font-family:"Familjen Grotesk",sans-serif;font-weight:700;letter-spacing:-.028em}
.wm-live{color:var(--accent)} .wm-work{color:var(--coin)} .wm-local{color:var(--warn)}

/* LAYOUT */
.wrap{max-width:1100px;margin:0 auto;padding:0 22px}
.sect{padding:64px 0;border-top:1px solid var(--stroke-quiet)}
.sec-head{margin-bottom:26px}
.sec-head h2{margin:10px 0 8px}
.grid{display:grid;gap:14px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.pad{padding:20px}
.row{display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.spread{justify-content:space-between}

/* BAR */
.bar{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 62%,transparent);
  backdrop-filter:var(--blur-float);-webkit-backdrop-filter:var(--blur-float);border-bottom:1px solid var(--stroke-quiet)}
.bar-in{max-width:1100px;margin:0 auto;padding:12px 22px;display:flex;align-items:center;gap:20px}
.logo{display:flex;align-items:center;gap:10px;font-family:"Familjen Grotesk",sans-serif;font-weight:600;
  font-size:15.5px;letter-spacing:-.02em;text-decoration:none}
.mark{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;color:var(--accent);
  background:linear-gradient(155deg,var(--accent-soft),transparent);border:1px solid var(--accent-line)}
.nav-links{display:flex;gap:4px;margin-left:auto}
.nav-links a{text-decoration:none;font-size:13.5px;font-weight:500;color:var(--t2);padding:7px 13px;
  border-radius:9px;border:1px solid transparent;transition:all var(--fast)}
.nav-links a:hover{color:var(--t1);background:var(--glass-1)}
.nav-links a[aria-current="page"]{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}

/* ICONS */
.i{width:18px;height:18px;flex:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;
  stroke-linejoin:round;fill:none}
.i-sm{width:15px;height:15px;stroke-width:1.6}
.i-lg{width:22px;height:22px;stroke-width:1.4}

/* CONTROLS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13.5px;font-weight:500;
  padding:9px 15px;border-radius:var(--r-sm);border:1px solid var(--stroke);background:var(--glass-2);color:var(--t1);
  text-decoration:none;backdrop-filter:var(--blur-pane);-webkit-backdrop-filter:var(--blur-pane);
  box-shadow:0 1px 0 0 rgba(255,255,255,.08) inset;transition:all var(--fast)}
.btn:hover{background:var(--glass-3);border-color:var(--stroke-strong)}
.btn:active{transform:translateY(1px)}
.btn-key{background:linear-gradient(180deg,#12857B,#0F6B64);color:#F2FBF9;border-color:rgba(15,107,100,.5);
  box-shadow:0 1px 0 0 rgba(255,255,255,.1) inset,var(--glow)}
.btn-key:hover{background:linear-gradient(180deg,#149185,#10756D);border-color:rgba(15,107,100,.6)}
.btn:disabled,.btn[aria-disabled="true"]{background:var(--row-sunk);border-color:var(--stroke);color:var(--t3);box-shadow:none;cursor:not-allowed}

/* CHIPS */
.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 7px;border-radius:20px;font-size:11.5px;
  font-weight:500;border:1px solid var(--stroke);background:var(--glass-1);color:var(--t2)}
.chip .dot{width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}
.chip-ok{color:var(--ok);border-color:var(--accent-line);background:var(--accent-soft)}
.chip-warn{color:var(--warn);border-color:rgba(232,192,95,.4);background:rgba(232,192,95,.14)}
.chip-coin{color:var(--coin);border-color:rgba(238,138,87,.36);background:rgba(238,138,87,.12)}
.chip-mono{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase}

/* STATS */
.stat{padding:15px 17px;border-radius:var(--r-md);border:1px solid var(--stroke);background:var(--row);box-shadow:var(--lift-1)}
.stat .k{display:flex;align-items:center;gap:7px;color:var(--t3);font-size:11.5px;margin-bottom:8px;
  font-family:"JetBrains Mono",monospace;letter-spacing:.08em;text-transform:uppercase;font-size:10.5px}
.stat .v{font-family:"Familjen Grotesk",sans-serif;font-size:26px;font-weight:600;letter-spacing:-.03em;line-height:1}
.stat .s{font-family:"JetBrains Mono",monospace;font-size:10.5px;color:var(--t3);margin-top:6px}

/* APP CARDS + CAROUSEL */
.carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);gap:14px;
  overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin}
.carousel>*{scroll-snap-align:start}
.appcard{background:var(--row);border:1px solid var(--stroke);border-radius:var(--r-lg);box-shadow:var(--lift-1);
  overflow:hidden;display:flex;flex-direction:column;transition:transform var(--fast),box-shadow var(--fast)}
.appcard:hover{transform:translateY(-3px);box-shadow:var(--lift-2)}
.cover{position:relative;height:150px;border-radius:var(--r-md);margin:10px;display:flex;align-items:flex-end;padding:10px}
.cover .tag{font-family:"JetBrains Mono",monospace;font-size:9.5px;letter-spacing:.14em;color:rgba(255,255,255,.92);
  text-transform:uppercase}
.cov-green{background:linear-gradient(150deg,#57703A,#2E4A1E)}
.cov-gold{background:linear-gradient(150deg,#C89A3B,#8F6A14)}
.cov-blue{background:linear-gradient(150deg,#5E88A0,#2F5A72)}
.cov-plum{background:linear-gradient(150deg,#9A4E90,#6A2C63)}
.appcard .body{padding:6px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.appcard h3{font-size:17px}
.appcard p{font-size:13.5px;color:var(--t2);line-height:1.5;flex:1}

/* DARK BAND */
.band{background:linear-gradient(160deg,var(--band),var(--band-2));color:var(--band-t1);padding:58px 0}
.band .eyebrow{color:#EE8A57}
.band h2{color:var(--band-t1)}
.band .lede{color:var(--band-t2)}
.band-stat{padding:16px 17px;border-radius:var(--r-md);border:1px solid var(--band-stroke);background:var(--band-row)}
.band-stat .v{font-family:"Familjen Grotesk",sans-serif;font-size:24px;font-weight:600;color:var(--band-t1)}
.band-stat .k{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--band-t2);margin-top:8px;line-height:1.5}
.btn-coin{background:linear-gradient(180deg,#EE8A57,#C05A25);color:#FFF7F0;border:1px solid rgba(238,138,87,.5);
  box-shadow:0 10px 26px -10px rgba(238,138,87,.45)}
.btn-coin:hover{background:linear-gradient(180deg,#F29565,#CB6530)}

/* CAUSE CARDS */
.cause{background:var(--row);border:1px solid var(--stroke);border-radius:var(--r-md);box-shadow:var(--lift-1);padding:18px}
.cause .ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;margin-bottom:12px;
  background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent)}
.cause h3{font-size:15.5px;margin-bottom:5px}
.cause p{font-size:13px;color:var(--t2);line-height:1.55}

/* FEATURED APP PANEL */
.featured{display:grid;grid-template-columns:240px 1fr;gap:22px;padding:24px;align-items:start}
.featured .cover{height:210px;margin:0}
.featured .fbody{display:flex;flex-direction:column;gap:12px}

/* FOOTER */
footer.foot{padding:36px 0 60px;border-top:1px solid var(--stroke-quiet);color:var(--t3);font-size:13px}
.foot-in{max-width:1100px;margin:0 auto;padding:0 22px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.foot-socials{display:flex;gap:8px;margin-left:auto}
.foot-socials a{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;
  background:var(--glass-2);border:1px solid var(--stroke);color:var(--t2);transition:all var(--fast)}
.foot-socials a:hover{color:var(--accent);border-color:var(--accent-line)}
.foot-socials svg{width:16px;height:16px;fill:currentColor}

@media (max-width:860px){
  .g4{grid-template-columns:repeat(2,1fr)} .g3{grid-template-columns:1fr}
  .featured{grid-template-columns:1fr}
  .nav-links a{padding:7px 9px;font-size:12.5px}
}
@media (max-width:600px){
  .g2,.g4{grid-template-columns:1fr} .sect{padding:46px 0}
  .carousel{grid-auto-columns:78%}
}
@media (prefers-reduced-motion:reduce){
  .lwl *{animation:none!important;transition-duration:1ms!important}
}
