/* LAB — Impact Lab: sage + lime, chunky grotesque, playful and tactile */
body.lab{--bg:#E4ECD6;--surface:#F4F8EA;--ink:#14301F;--muted:#44604D;--line:#C3D2AE;--signal:#C6F135;--signal-ink:#14301F;--chip:#D4E1BE;--peach-soft:#D9E6C4;--display:"Bricolage Grotesque",system-ui,sans-serif;--body:"Bricolage Grotesque",system-ui,sans-serif;--label:"Bricolage Grotesque",system-ui,sans-serif;--shadow:0 24px 40px -24px rgba(20,48,31,.45);color-scheme:light;background:var(--bg);color:var(--ink);font-family:var(--body)}
body.lab .theme-btn{display:none}
body.lab .brand img{filter:none}
body.lab header.site{background:var(--ink);border:0;border-radius:999px;box-shadow:0 12px 30px -14px rgba(20,48,31,.7)}
body.lab nav.main a,body.lab .dd>button{color:#E9F3D6;font-weight:600}
body.lab nav.main a:hover,body.lab .dd>button:hover{background:rgba(198,241,53,.18);color:#C6F135}
body.lab .brand img{filter:brightness(0) invert(1)}
body.lab .menu-btn{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.25)}
body.lab nav.main.open a,body.lab nav.main.open .dd>button{color:#E9F3D6}
body.lab nav.main.open{background:var(--ink)}
body.lab .btn{border-radius:999px;background:#C6F135;color:#14301F;box-shadow:0 5px 0 #14301F;border:2px solid #14301F;font-weight:800;padding:15px 24px;transition:transform .2s,box-shadow .2s}
body.lab .btn:hover{transform:translateY(3px);box-shadow:0 2px 0 #14301F}
body.lab header.site .btn{box-shadow:none;border-color:#C6F135}
.lb h1,.lb h2,.lb h3{font-family:var(--display);font-weight:800;letter-spacing:-.045em;text-transform:none}
.lb em{font-style:normal;color:var(--ink);-webkit-background-clip:border-box;background-clip:border-box;background:linear-gradient(transparent 58%,#C6F135 58% 92%,transparent 92%);padding:0 .06em}
.lb-tag{display:inline-block;font:800 12px/1 var(--label);letter-spacing:.14em;text-transform:uppercase;background:var(--ink);color:#C6F135;padding:9px 14px;border-radius:999px;justify-self:start;width:fit-content}
.lb-tag.alt{background:#C6F135;color:var(--ink)}
.lb-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,70px);align-items:center;padding-block:clamp(40px,6vw,90px)}
.lb-title{font-size:clamp(46px,7vw,112px);line-height:.92;margin:22px 0 22px}
.lb-title .w{padding-bottom:.2em}
.lb-lead{font-size:clamp(16.5px,1.35vw,19px);color:var(--muted);max-width:56ch;margin:0 0 28px;font-weight:500}
.lb-visual{position:relative;aspect-ratio:1/1.05;max-width:560px;margin-inline:auto;width:100%}
.lb-blob{position:absolute;inset:6% 4% 4% 6%;overflow:hidden;border-radius:60% 40% 30% 70% / 60% 30% 70% 40%;border:3px solid var(--ink);box-shadow:10px 10px 0 var(--ink)}
.lb-blob img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.15)}
.lb-badge{position:absolute;right:-4%;top:-3%;width:clamp(100px,13vw,160px);height:auto;color:var(--ink);z-index:3;fill:var(--ink)}
.lb-badge text{fill:#14301F}
.lb-sticker{position:absolute;z-index:4;font:800 clamp(14px,1.4vw,18px) var(--label);padding:11px 18px;border-radius:999px;border:2.5px solid var(--ink);cursor:grab;user-select:none;touch-action:none;box-shadow:4px 4px 0 var(--ink);white-space:nowrap}
.lb-sticker:active{cursor:grabbing}
.lb-sticker.s1{left:-2%;top:22%;background:#C6F135;transform:rotate(-8deg)}
.lb-sticker.s2{right:-3%;top:52%;background:#FFB4A2;transform:rotate(7deg)}
.lb-sticker.s3{left:6%;bottom:6%;background:#fff;transform:rotate(-4deg)}
.lb-sticker.s4{right:10%;bottom:-2%;background:#FFE17A;transform:rotate(5deg)}
.lb-drag{position:absolute;left:4%;top:-2%;font:700 28px var(--label);font-family:"Caveat",cursive;color:var(--ink);transform:rotate(-6deg);z-index:4}
.lb-mq{overflow:hidden;background:var(--ink);color:#C6F135;padding:20px 0;transform:rotate(-1.4deg);margin:20px -2vw;border-block:3px solid #C6F135}
.lb-mqt{display:flex;width:max-content;align-items:center;gap:34px;font:800 clamp(28px,4.2vw,58px)/1 var(--display);letter-spacing:-.03em;text-transform:uppercase;will-change:transform}
.lb-mqt i{font-style:normal;color:#fff;font-size:.6em}
.lb-sec{padding-block:clamp(60px,9vw,130px)}
.lb-head{display:grid;gap:18px;margin-bottom:clamp(30px,5vw,60px);max-width:820px}
.lb-head h2,.lb-hl-copy h2{font-size:clamp(38px,5.4vw,80px);line-height:.95;margin:0}
.lb-notes{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:start}
.lb-note{padding:24px 22px 30px;border:2.5px solid var(--ink);box-shadow:6px 6px 0 var(--ink);display:grid;gap:10px;transform:rotate(var(--r,0deg));transition:transform .35s cubic-bezier(.3,1.6,.5,1),box-shadow .35s;cursor:default}
.lb-note.n1{background:#C6F135;--r:-2deg}.lb-note.n2{background:#FFB4A2;--r:1.6deg;margin-top:26px}.lb-note.n3{background:#fff;--r:-1deg}.lb-note.n4{background:#FFE17A;--r:2.2deg;margin-top:34px}
.lb-note:hover{transform:rotate(0) translateY(-10px) scale(1.03);box-shadow:10px 14px 0 var(--ink)}
.lb-hand{font:700 30px/1 "Caveat",cursive}
.lb-note h3{font-size:26px;line-height:1.02;margin:0}.lb-note p{margin:0;font-weight:500;font-size:15.5px}
.lb-deliver{background:var(--ink);color:#E9F3D6;border-radius:48px;margin-inline:clamp(8px,2vw,24px)}
.lb-deliver .lb-tag{background:#C6F135;color:var(--ink)}
.lb-deliver h2{color:#F4F8EA}.lb-deliver em{background:linear-gradient(transparent 58%,#C6F135 58% 92%,transparent 92%);color:var(--ink);background-color:transparent}
.lb-deliver em{color:#F4F8EA!important;background:none;-webkit-background-clip:border-box;text-decoration:underline;text-decoration-color:#C6F135;text-decoration-thickness:.1em;text-underline-offset:.1em}
.lb-pns{display:flex;gap:14px;height:min(420px,56vh)}
.lb-pn{flex:1;min-width:0;border-radius:32px;padding:26px;position:relative;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;background:#1F4630;transition:flex .7s cubic-bezier(.7,0,.2,1),background .4s;outline:0}
.lb-pn.p2{background:#2B5A3A}.lb-pn.p3{background:#356B45}.lb-pn.p4{background:#3F7B50}
.lb-pn b{position:absolute;left:24px;top:20px;font:800 clamp(44px,5vw,76px)/1 var(--display);color:#C6F135;letter-spacing:-.05em}
.lb-pn h3{font-size:clamp(20px,2vw,30px);margin:0;color:#fff;line-height:1.05}
.lb-pn p{margin:0;color:#D5E6C3;font-size:15.5px;max-height:0;opacity:0;overflow:hidden;transition:max-height .6s,opacity .5s .1s;max-width:36ch}
.lb-pn.on{flex:3.2;background:#C6F135}
.lb-pn.on b{color:var(--ink)}.lb-pn.on h3{color:var(--ink)}.lb-pn.on p{max-height:140px;opacity:1;color:#1F3A28}
.lb-hl-in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,70px);align-items:center}
.lb-hl-img{border-radius:48% 52% 40% 60% / 50% 40% 60% 50%;overflow:hidden;aspect-ratio:1/.9;border:3px solid var(--ink);box-shadow:10px 10px 0 var(--ink)}
.lb-hl-img img{width:100%;height:100%;object-fit:cover;display:block}
.lb-hl-copy{display:grid;gap:20px;justify-items:start}.lb-hl-copy p{margin:0;font-size:18px;font-weight:500;color:var(--muted);max-width:50ch}
@media (max-width:900px){
  .lb-hero,.lb-hl-in{grid-template-columns:1fr}
  .lb-notes{grid-template-columns:1fr 1fr}
  .lb-pns{flex-direction:column;height:auto}
  .lb-pn{flex:none;min-height:96px;padding:20px 20px 20px 86px;justify-content:center}
  .lb-pn b{top:50%;transform:translateY(-50%);font-size:44px}
  .lb-pn.on{flex:none;min-height:190px}
  .lb-deliver{border-radius:32px}
}
@media (max-width:560px){.lb-notes{grid-template-columns:1fr}.lb-note.n2,.lb-note.n4{margin-top:0}}
