:root{--bg:#0e100f;--bg-elev:#161817;--ink:#0e100f;--ink-2:#161817;--ink-3:#1f2220;--cream:#fffce1;--text:#fffce1;--text-muted:#b5b29f;--text-subtle:#7d7b6c;--line:#fffce11a;--border-strong:#fffce138;--surface:#fffce10a;--surface-2:#fffce112;--surface-3:#fffce11f;--c-red:#ff5a6e;--c-orange:#ff8709;--c-yellow:#ffd23f;--c-green:#0ae448;--c-lime:#abff84;--c-cyan:#3fe0ff;--c-blue:#00bae2;--c-violet:#9d95ff;--c-pink:#fec5fb;--accent:#0ae448;--accent-soft:#0ae44824;--on-brand:#0e100f;--brand:linear-gradient(100deg, #0ae448 0%, #abff84 45%, #fec5fb 100%);--good:#0ae448;--warn:#fbbf24;--bad:#f87171;--laser:#ff3b3b;--laser-glow:#ff3b3bcc;--sel:#0ae44859;--dash:#fffce147;--ink-veil:#0e100f1a;--ink-muted:#0e100fb8;--backdrop:#08090873;--font-display:"Space Grotesk", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--radius-sm:10px;--radius:16px;--radius-lg:24px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--sticker:6px 6px 0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:400 16px/1.55 var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-weight:700;line-height:1.1}p{margin:0}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer}ul,ol{margin:0;padding:0;list-style:none}::selection{background:var(--sel)}:focus-visible{outline:2px solid var(--c-green);outline-offset:2px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.eyebrow,.mono-label{font:500 .75rem/1.2 var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--accent)}.sticker{--s:var(--c-green);background:var(--s);color:var(--ink);--tilt:-2.5deg;transform:rotate(var(--tilt));box-shadow:-.07em .09em 0 color-mix(in srgb, var(--s) 40%, #000);border-radius:.06em;padding:.02em .22em .06em;display:inline-block}.pill-link,.tile-btn{border:1.5px solid var(--cream);min-height:36px;color:var(--cream);font:600 .85rem/1 var(--font-display);white-space:nowrap;transition:background .25s var(--ease-out), color .25s var(--ease-out), box-shadow .25s var(--ease-out);background:0 0;border-radius:999px;align-items:center;gap:.45rem;padding:0 1rem;text-decoration:none;display:inline-flex}.pill-link:hover,.tile-btn:hover{background:var(--cream);color:var(--ink)}.t-block .tile-btn,.t-cream .tile-btn{border-color:var(--ink);color:var(--ink)}.t-block .tile-btn:hover,.t-cream .tile-btn:hover{background:var(--ink);color:var(--cream)}.pill-hire{background:var(--c-green);border:1.5px solid var(--c-green);color:var(--on-brand);position:relative}.pill-hire:hover{background:var(--c-lime);border-color:var(--c-lime);color:var(--on-brand)}.ping{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px;display:inline-block;position:relative}.ping:after{content:"";border:2px solid;border-radius:50%;animation:1.8s ease-out infinite ping;position:absolute;inset:-2px}.avail-dot{color:var(--c-green)}@keyframes ping{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}.magnet{margin:-10px;padding:10px;display:inline-block}.btn-go{border:2px solid var(--c-green);background:var(--c-green);height:54px;color:var(--on-brand);font:700 1.05rem/1 var(--font-display);border-radius:999px;align-items:center;gap:.9rem;padding:0 8px 0 1.5rem;text-decoration:none;animation:2.6s ease-out infinite go-pulse;display:inline-flex}.btn-go .go-dot{background:var(--ink);width:38px;height:38px;color:var(--c-green);border-radius:50%;place-items:center;display:grid}.btn-go .go-dot svg{transition:rotate .4s var(--ease-spring)}.btn-go:hover .go-dot svg{rotate:-45deg}@keyframes go-pulse{0%{box-shadow:0 0 #0ae4488c}70%,to{box-shadow:0 0 0 14px #0ae44800}}.steps{flex-wrap:wrap;gap:8px;display:flex}.step{border:1.5px solid var(--line);height:34px;color:var(--text-muted);font:600 .8rem/1 var(--font-display);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:0 14px 0 5px;display:inline-flex}.step .num{background:var(--surface-3);width:24px;height:24px;color:var(--cream);font:500 .72rem/1 var(--font-mono);border-radius:50%;place-items:center;transition:background .3s,color .3s;display:grid}.step.current{border-color:var(--c-green);color:var(--cream)}.step.current .num{background:var(--c-green);color:var(--ink)}.step.done .num{background:var(--accent-soft);color:var(--c-green)}.switch{border:1.5px solid var(--border-strong);width:58px;height:28px;color:var(--text-subtle);font:500 .62rem/1 var(--font-mono);letter-spacing:.08em;transition:background .25s, border-color .25s, box-shadow .25s var(--ease-out);background:0 0;border-radius:999px;flex:none;padding:0;position:relative}.switch .lbl{position:absolute;top:50%;right:9px;translate:0 -50%}.switch .thumb{background:var(--cream);width:18px;height:18px;transition:transform .35s var(--ease-spring);border-radius:50%;position:absolute;top:3.5px;left:4px}.switch[aria-checked=true]{background:var(--c-green);border-color:var(--c-green);color:var(--ink);box-shadow:3px 3px 0 var(--ink)}.switch[aria-checked=true] .lbl{left:9px;right:auto}.switch[aria-checked=true] .thumb{background:var(--ink);transform:translate(30px)}kbd{font:500 .78rem/1 var(--font-mono);background:var(--ink);color:var(--cream);border:1px solid var(--border-strong);animation:3.6s ease-in-out infinite key-press;animation-delay:calc(var(--i,0) * .6s);border-bottom-width:2px;border-radius:8px;align-items:center;padding:.5em .75em;display:inline-flex}@keyframes key-press{0%,86%,to{color:var(--cream);border-bottom-width:2px;transform:none}91%{color:var(--c-lime);border-bottom-width:1px;transform:translateY(3px)}}.dropzone{border:2px dashed var(--dash);text-align:center;color:var(--text-muted);border-radius:16px;padding:1rem}.file-chip{background:var(--c-violet);color:var(--ink);box-shadow:-3px 4px 0 color-mix(in srgb, var(--c-violet) 40%, #000);border-radius:14px;align-items:center;gap:.6rem;padding:.6rem 1rem .6rem 2.6rem;display:inline-flex;position:relative}.file-chip .chip-ico{background:var(--ink);width:30px;height:30px;color:var(--c-violet);border-radius:9px;place-items:center;display:grid;position:absolute;top:-10px;left:-10px;rotate:-6deg}.confetti-layer{z-index:10000;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti-layer i{display:block;position:absolute}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation:none!important}}.bento-home{grid-template-rows:auto auto 1fr;gap:clamp(8px,1.3vh,14px);min-height:100dvh;padding:0 clamp(12px,1.6vw,24px) clamp(10px,1.6vh,18px);display:grid}@media (width>=960px) and (height>=601px){.bento-home{height:100dvh;overflow:hidden}}.marquee{background:linear-gradient(90deg, var(--c-green), var(--c-lime));color:var(--ink);font:700 .78rem/1 var(--font-display);text-transform:uppercase;letter-spacing:.08em;margin:0 calc(-1*clamp(12px,1.6vw,24px));padding:.55rem 0;overflow:hidden}.marquee-track{width:max-content;display:flex}.marquee-set{flex:none;display:flex}.marquee-set span{white-space:nowrap}.marquee-set i{margin:0 1.1rem;font-style:normal}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:clamp(6px,1vh,10px);display:flex}.wordmark{font:700 1.65rem/1 var(--font-display);letter-spacing:-.04em;align-items:center;gap:8px;text-decoration:none;display:inline-flex;transform:skew(-9deg)}.laser{background:var(--laser);width:8px;height:8px;box-shadow:0 0 12px 2px var(--laser-glow);border-radius:50%;animation:2.4s ease-in-out infinite blink}@keyframes blink{50%{opacity:.35;transform:scale(.7)}}.topnav{align-items:center;gap:8px;display:flex}.topnav .pill-link{min-height:44px}.pill-hire .ping{color:var(--ink)}.bh-grid{grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:repeat(12,minmax(0,1fr));grid-template-areas:"hero hero hero hero hero hero photo photo photo demo demo demo""hero hero hero hero hero hero photo photo photo demo demo demo""hero hero hero hero hero hero proj proj proj me me me""stat stat stack stack stack stack proj proj proj me me me";gap:clamp(8px,1.3vh,14px);min-height:0;display:grid}.a-hero{grid-area:hero}.a-proj{grid-area:proj}.a-demo{grid-area:demo}.a-stat{grid-area:stat}.a-stack{grid-area:stack}.a-photo{grid-area:photo}.a-me{grid-area:me}@media (width<=1100px){.bh-grid{grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:repeat(6,minmax(0,1fr));grid-template-areas:"hero hero hero hero photo photo""hero hero hero hero photo photo""hero hero hero hero proj proj""stat stack stack stack proj proj""demo demo demo me me me"}.hero .hero-lead{display:none}}@media (width<=959px),(height<=600px){.bh-grid{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"hero hero""photo me""proj proj""demo stat""stack stack";grid-auto-rows:minmax(150px,auto)}.a-hero{min-height:440px}.hero .hero-lead{display:block}}@media (width<=600px){.bh-grid{grid-template-columns:1fr;grid-template-areas:"hero""photo""proj""demo""stat""stack""me"}.hero-art{opacity:.5}.hero h1 .line{white-space:normal}.hide-sm{display:none}.wordmark{font-size:1.4rem}}.tile{--mx:50%;--my:50%;background:var(--ink-2);border:1px solid var(--line);isolation:isolate;min-width:0;min-height:0;transition:translate .35s var(--ease-spring), box-shadow .35s var(--ease-out), border-color .35s var(--ease-out);border-radius:22px;flex-direction:column;padding:clamp(.85rem,1.7vh,1.3rem);display:flex;position:relative;overflow:hidden;container-type:inline-size}.tile:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(380px circle at var(--mx) var(--my), color-mix(in srgb, var(--accent) 16%, transparent), transparent 55%);opacity:0;transition:opacity .35s var(--ease-out);position:absolute;inset:0}@media (hover:hover){.tile{will-change:translate}.tile:hover{border-color:color-mix(in srgb, var(--accent) 60%, transparent);box-shadow:8px 8px 0 var(--accent);translate:-4px -4px}.tile:hover:after{opacity:1}.tile:hover .tile-icon{animation:wiggle .6s var(--ease-out)}.tile:hover .deco{scale:1.25}}@keyframes wiggle{25%{rotate:-14deg;scale:1.15}55%{rotate:10deg;scale:1.15}80%{rotate:-4deg}}.tile-head{flex:none;align-items:center;gap:.6rem;margin-bottom:clamp(.4rem,1vh,.8rem);display:flex}.tile-head h2{letter-spacing:-.01em;font-size:.95rem;font-weight:600}.tile-icon{background:var(--accent);width:28px;height:28px;color:var(--ink);border-radius:8px;flex:none;place-items:center;display:grid}.t-block{--text-muted:var(--ink-muted);background:var(--accent);color:var(--ink);border-color:#0000}.t-block .tile-icon{background:var(--ink);color:var(--accent)}.t-block:after{display:none}@media (hover:hover){.t-block:hover{box-shadow:8px 8px 0 color-mix(in srgb, var(--accent) 45%, #000)}}.t-cream{background:var(--cream);color:var(--ink);--text-muted:var(--ink-muted);border-color:#0000}.t-cream .tile-icon{background:var(--ink);color:var(--c-green)}.t-cream:after{display:none}@media (hover:hover){.t-cream:hover{box-shadow:8px 8px 0 var(--c-green)}}.deco{z-index:-1;aspect-ratio:1;background:var(--ink-veil);width:70%;transition:scale .5s var(--ease-spring);animation:22s linear infinite spin;position:absolute;bottom:-26%;right:-14%}.deco-circle{border-radius:50%}.deco-square{border-radius:22%}.deco-tri{clip-path:polygon(50% 6%,96% 92%,4% 92%)}.deco.rev{animation-direction:reverse}@keyframes spin{to{rotate:360deg}}.hero{justify-content:center}.hero-art{z-index:-1;pointer-events:none;position:absolute;inset:0}.shape-wrap{position:absolute}.shape-wrap svg{width:100%;height:100%;display:block;overflow:visible}.w-clover{aspect-ratio:1;width:clamp(64px,9vw,120px);top:5%;right:6%}.w-ring{aspect-ratio:1;width:clamp(44px,6vw,80px);top:28%;right:22%}.w-ast{aspect-ratio:1;width:clamp(36px,4.5vw,64px);top:8%;right:30%}.w-squig{aspect-ratio:120/80;width:clamp(64px,8vw,110px);top:42%;right:4%}.w-morph{aspect-ratio:1;opacity:.7;width:clamp(60px,6vw,96px);bottom:6%;right:5%}.hero-copy{flex-direction:column;align-items:flex-start;gap:clamp(.5rem,1.6vh,1.1rem);display:flex}.brace{font:600 .9rem/1 var(--font-display);color:var(--accent);min-height:1em}.hero h1{letter-spacing:-.045em;font-size:clamp(1.9rem,min(3.9vw,6.6vh),4.4rem);line-height:1.12}.hero h1 .line{white-space:nowrap;padding:.04em 0;display:block}.hero-lead{max-width:34ch;color:var(--text-muted);font-size:clamp(.9rem,1.9vh,1.05rem)}.hero-cta{flex-wrap:wrap;align-items:center;gap:1.4rem;padding-left:10px;display:flex}.avail{font:500 .75rem/1 var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);align-items:center;gap:10px;display:inline-flex}.steps li{display:contents}.step{cursor:pointer}.proj-list{flex-direction:column;flex:1;justify-content:space-between;gap:clamp(2px,.6vh,6px);min-height:0;display:flex;overflow:hidden}.proj-row{text-align:left;width:100%;min-height:44px;color:var(--ink);background:0 0;border:0;border-bottom:1.5px solid #0e100f24;align-items:center;gap:.7rem;padding:.35rem 0;display:flex}.proj-dot{border:2px solid var(--ink);border-radius:50%;flex:none;width:12px;height:12px}.proj-text{flex-direction:column;flex:1;min-width:0;display:flex}.proj-text strong{font:700 clamp(.95rem, 2vh, 1.1rem)/1.15 var(--font-display);letter-spacing:-.02em}.proj-text small{color:var(--ink-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.78rem;line-height:1.3;display:-webkit-box;overflow:hidden}.arrow-pill{border:1.5px solid var(--ink);border-radius:999px;flex:none;place-items:center;width:36px;height:28px;transition:background .25s,color .25s;display:grid}.proj-row:hover .arrow-pill{background:var(--ink);color:var(--cream)}.stat-big{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.stat-num{font:700 clamp(2.4rem, 7vh, 3.8rem)/.9 var(--font-display);letter-spacing:-.05em;font-variant-numeric:tabular-nums}.stat-label{font:600 .85rem/1.1 var(--font-display)}.pulse{width:100%;height:clamp(16px,3vh,30px);margin-top:auto;overflow:hidden}.pulse-run{animation:2.6s linear infinite beat}.tile:hover .pulse-run{animation-duration:1.1s}@keyframes beat{to{transform:translate(-200px)}}.stat-cap{font:500 .66rem/1.3 var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.keys-row{flex-wrap:wrap;align-content:flex-start;gap:8px;display:flex}.keys-row kbd{font-size:clamp(.68rem,1.5vh,.78rem)}.cert-list li{font:700 clamp(.95rem, 2.2vh, 1.15rem)/1.2 var(--font-display);letter-spacing:-.02em}.me-row{align-items:center;gap:.8rem;display:flex}.avatar{aspect-ratio:1;background:var(--ink);width:clamp(48px,8vh,64px);color:var(--c-pink);font:700 1.3rem/1 var(--font-display);border-radius:18px;flex:none;place-items:center;animation:4s ease-in-out infinite sway;display:grid;rotate:-6deg}@keyframes sway{50%{rotate:5deg}}.me-name{font:700 clamp(1rem, 2.2vh, 1.2rem)/1.1 var(--font-display);letter-spacing:-.02em}.me-role{color:var(--text-muted);font-size:.85rem}.me-line{color:var(--ink);max-width:26ch;margin-top:clamp(.4rem,1.2vh,.8rem);font-size:.85rem}.me-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-top:auto;display:flex}.socials{gap:8px;display:flex}.socials li{animation:3s ease-in-out infinite bob;animation-delay:calc(var(--i) * .3s)}@keyframes bob{50%{transform:translateY(-3px)}}.socials a{border:1.5px solid var(--ink);width:44px;height:44px;color:var(--ink);transition:scale .3s var(--ease-spring), background .25s;border-radius:50%;place-items:center;display:grid}.socials a:hover{background:var(--cream);scale:1.18}.sheet-backdrop{z-index:1000;background:var(--backdrop);-webkit-backdrop-filter:blur(5px)saturate(.9);backdrop-filter:blur(5px)saturate(.9);padding:clamp(12px,3vw,32px) clamp(12px,3vw,32px) calc(clamp(12px,3vw,32px) + 10px);display:flex;position:fixed;inset:0;overflow-y:auto}.sheet{background:var(--bg-elev);border:1px solid var(--line);width:min(680px,100%);height:fit-content;box-shadow:10px 10px 0 var(--sheet-shadow,var(--c-pink));border-radius:26px;margin:auto;padding:clamp(1.1rem,3vw,2rem);position:relative}.sheet-close{z-index:2;border:1.5px solid var(--cream);width:40px;height:40px;color:var(--cream);transition:rotate .35s var(--ease-spring), background .25s, color .25s;background:0 0;border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;right:14px}.sheet-close:hover{background:var(--cream);color:var(--ink);rotate:90deg}.sheet-body{flex-direction:column;gap:1.4rem;display:flex}.sheet-title{letter-spacing:-.04em;margin:.3rem 0 .6rem;font-size:clamp(1.6rem,4vw,2.3rem)}.sheet-lead{color:var(--text-muted);max-width:52ch}.sheet-h{margin-bottom:.7rem;font-size:1rem}.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.svc{background:var(--ink-3);border:1px solid var(--line);border-top:4px solid var(--c-green);color:var(--text-muted);border-radius:14px;flex-direction:column;gap:.3rem;padding:.8rem .9rem;font-size:.85rem;display:flex}.svc strong{font:700 .95rem/1.2 var(--font-display);color:var(--cream)}.work-list,.chip-row{flex-wrap:wrap;gap:8px;display:flex}.work-link{border:1.5px solid var(--border-strong);min-height:36px;font:600 .85rem/1 var(--font-display);background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 .9rem;display:inline-flex}.work-link:hover{background:var(--cream);color:var(--ink)}.arch-list{color:var(--text-muted);flex-direction:column;gap:.5rem;display:flex}.arch-list li{padding-left:1.2rem;position:relative}.arch-list li:before{content:"✦";color:var(--c-violet);position:absolute;left:0}.lead-card{background:var(--c-green);color:var(--ink);border-radius:20px;flex-direction:column;gap:.8rem;padding:clamp(1rem,2.5vw,1.4rem);display:flex}.lead-card h3{font-size:1.3rem}.lead-card label{font:600 .78rem/1 var(--font-display);flex-direction:column;gap:.25rem;display:flex}.lead-card input[type=text],.lead-card input:not([type]),.lead-card input[type=email],.lead-card textarea{font:400 .95rem/1.4 var(--font-body);color:var(--ink);background:var(--cream);border:1.5px solid var(--ink);resize:vertical;border-radius:12px;min-height:44px;padding:.6rem .75rem}.lead-card input:focus-visible,.lead-card textarea:focus-visible{box-shadow:3px 3px 0 var(--ink);outline:none}.lead-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.needs{border:0;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;display:flex}.needs legend{font:600 .78rem/1 var(--font-display);float:left;width:100%;margin-bottom:.4rem;padding:0}.need{border:1.5px solid var(--ink);cursor:pointer;border-radius:999px;align-items:center;min-height:40px;padding:0 .9rem;position:relative;flex-direction:row!important}.need input{opacity:0;cursor:pointer;position:absolute;inset:0}.need.on{background:var(--ink);color:var(--c-green)}.need:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:2px}.lead-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.remote{font:600 .8rem/1 var(--font-display);align-items:center;gap:.6rem;display:inline-flex}.lead-card .switch{border-color:var(--ink);color:var(--ink)}.lead-card .switch .thumb{background:var(--ink)}.lead-card .switch[aria-checked=true]{background:var(--cream);border-color:var(--ink);box-shadow:3px 3px 0 var(--ink)}.send-pill{background:var(--ink);min-height:44px;color:var(--cream);font:700 .95rem/1 var(--font-display);transition:box-shadow .25s var(--ease-out), translate .25s var(--ease-spring);border:0;border-radius:999px;align-items:center;gap:.5rem;padding:0 1.3rem;display:inline-flex}.send-pill:hover{box-shadow:4px 4px 0 var(--cream);translate:-2px -2px}.lead-status{min-height:1.2em;font-size:.8rem}.lead-status a{font-weight:600}@media (width<=520px){.svc-grid,.lead-row{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.tile:hover{translate:none!important}.tile:after{display:none}}@media (width>=960px) and (width<=1100px){.proj-text small{display:none}}.photo-frame{flex:1;place-items:center;min-height:0;padding:4px 8px 10px;display:grid}.photo-card{aspect-ratio:4/3;background:var(--cream);border:2px solid var(--ink);max-width:100%;height:100%;box-shadow:6px 6px 0 var(--c-green);transition:transform .4s var(--ease-spring);border-radius:20px;padding:5px;transform:rotate(-2.5deg)}.t-photo:hover .photo-card{transform:rotate(0)scale(1.02)}.photo-card img{object-fit:cover;object-position:50% 30%;border-radius:14px;width:100%;height:100%;display:block}.photo-cap{background:var(--ink);color:var(--cream);font:500 .72rem/1.3 var(--font-display);border-radius:14px;flex:none;align-items:center;gap:.5rem;padding:.5rem .8rem;display:flex}.photo-cap svg{color:var(--c-green);flex:none}.photo-cap b{color:var(--c-green)}@media (width<=959px){.a-photo{min-height:320px}}.journey{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.j-stage{background:var(--ink);border:1px solid var(--line);touch-action:pan-y;cursor:grab;border-radius:14px;flex:1;min-height:80px;position:relative;overflow:hidden}.j-stage:active{cursor:grabbing}.j-stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.j-score{background:var(--accent);color:var(--ink);font:500 .7rem/1 var(--font-mono);letter-spacing:.08em;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .6rem;display:inline-flex;position:absolute;top:8px;right:8px}.j-card{background:var(--ink-2);border:1px solid var(--line);border-left:4px solid var(--wp,var(--accent));border-radius:12px;padding:.45rem .7rem;position:absolute;bottom:8px;left:8px;right:8px}.j-card strong{font:700 .9rem/1.2 var(--font-display);justify-content:space-between;gap:.5rem;display:flex}.j-card strong small{font:500 .65rem/1.6 var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--wp,var(--accent))}.j-card p{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.74rem;line-height:1.3;display:-webkit-box;overflow:hidden}.j-done{margin-right:.4rem;font-size:.8rem}.j-controls{flex:none;align-items:center;gap:8px;display:flex}.j-btn{border:1.5px solid var(--cream);width:44px;height:36px;color:var(--cream);background:0 0;border-radius:999px;flex:none;place-items:center;transition:background .25s,color .25s;display:grid}.j-btn:hover:not(:disabled){background:var(--cream);color:var(--ink)}.j-btn:disabled{opacity:.35;cursor:default}.j-range{min-width:0;height:44px;accent-color:var(--accent);cursor:pointer;background:0 0;flex:1}.j-fallback{font:500 .75rem/1.4 var(--font-mono);color:var(--text-subtle);text-align:center;place-items:center;padding:1rem 1rem 4.5rem;display:grid;position:absolute;inset:0}@media (width<=959px){.a-demo{min-height:340px}.j-stage{min-height:200px}}@media (width>=960px) and (width<=1100px){.j-card p{display:none}}
