/* ============ SuperLazy — shared site styles ============ */
:root{
  --cream:#FAF7F2; --pink:#FADADB; --green:#E8F0CC; --peach:#FDD9BD;
  --lavender:#E4DCEF; --sky:#CFE5E6;
  --ink:#101010; --ink2:#3A3A3A; --muted:#7A7A7A; --white:#FFFFFF;
  --tag-pink:#F5C2C7; --tag-green:#CDE4A3; --tag-peach:#F9C99C;
  --tag-lav:#CFC0E6; --tag-sky:#A8D4D6;
  --subtle:#E6E1D8;
  --rec:#E45050; --success:#2A8E5C;
  --shadow:0 14px 40px rgba(16,16,16,.14);
  --shadow-hard:0 8px 0 rgba(16,16,16,.9);
  --r:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{
  margin:0;background:var(--cream);color:var(--ink);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;
  width:100%;max-width:100%;
}
img{max-width:100%}
h1,h2,h3,h4{font-family:Anton,Impact,sans-serif;font-weight:400;letter-spacing:-.5px;line-height:.98;margin:0;text-transform:uppercase}
h1{font-size:clamp(44px,8.5vw,104px)}
h2{font-size:clamp(32px,5.5vw,68px)}
h3{font-size:clamp(20px,2.4vw,30px)}
p{margin:0}
a{color:inherit;text-decoration:none}
.mono{font-family:"Geist Mono",monospace}
.wrap{width:min(1180px,92vw);margin:0 auto}
.eyebrow{font-family:Inter;font-weight:700;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted)}
.lead{font-size:clamp(15px,1.5vw,19px);color:var(--ink2);line-height:1.6}

/* ---- lucide icon sizing ---- */
[data-lucide]{display:inline-flex;vertical-align:middle}
svg.lucide{width:20px;height:20px;stroke-width:2}
.ic-sm svg.lucide{width:15px;height:15px}
.ic-md svg.lucide{width:18px;height:18px}
.ic-lg svg.lucide{width:26px;height:26px}

/* ---- buttons ---- */
.btn{display:inline-flex;align-items:center;gap:10px;height:56px;padding:0 10px 0 26px;border-radius:999px;
  font-family:Inter;font-weight:600;font-size:15px;border:2px solid var(--ink);cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;will-change:transform}
.btn .pill{width:38px;height:38px;border-radius:999px;display:grid;place-items:center}
.btn .pill svg.lucide{width:18px;height:18px}
.btn-dark{background:var(--ink);color:var(--white)}
.btn-dark .pill{background:var(--pink);color:var(--ink)}
.btn-light{background:var(--white);color:var(--ink)}
.btn-light .pill{background:var(--ink);color:var(--white)}
.btn:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.btn:active{transform:translateY(0)}

/* ---- nav ---- */
nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);
  background:rgba(250,247,242,.72);border-bottom:1px solid transparent;transition:border-color .3s}
nav.scrolled{border-color:rgba(16,16,16,.1)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:72px;gap:16px}
.brand{display:flex;align-items:center;gap:10px;font-family:Anton;font-size:24px;letter-spacing:.5px}
.brand .mk{width:34px;height:34px;border-radius:10px;background:var(--ink);display:grid;place-items:center}
.brand .mk svg.lucide{width:20px;height:20px;color:#fff}
.nav-links{display:flex;align-items:center;gap:26px}
.nav-links a{font-size:14px;font-weight:600;color:var(--ink2)}
.nav-links a:hover{color:var(--ink)}
.nav-cta{height:44px;padding:0 20px;border-radius:999px;background:var(--ink);color:var(--white);
  display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;border:2px solid var(--ink);transition:transform .18s}
.nav-cta:hover{transform:translateY(-2px)}
.nav-cta svg.lucide{width:16px;height:16px}
@media(max-width:760px){.nav-links{display:none}}

/* ---- reveal ---- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:.08s}
.reveal[data-d="2"]{transition-delay:.16s}
.reveal[data-d="3"]{transition-delay:.24s}
.reveal[data-d="4"]{transition-delay:.32s}

/* ---- mascot ---- */
.mascot{display:block}
.mascot.inv{filter:invert(1)}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-14px) rotate(1.5deg)}}
.bob{animation:bob 5s ease-in-out infinite}

section{padding:clamp(64px,9vw,120px) 0}
.section-head{max-width:760px;margin-bottom:48px}
.section-head h2{margin-top:10px}
.section-head p{margin-top:18px}

/* ====================== PHONE MOCKUP (matches the real app) ====================== */
.phone{width:300px;max-width:84vw;aspect-ratio:300/620;background:linear-gradient(160deg,#1c1c1e,#050505);
  border-radius:46px;padding:11px;box-shadow:var(--shadow);position:relative}
.screen{position:absolute;inset:11px;border-radius:36px;background:var(--cream);overflow:hidden;display:flex;flex-direction:column}
.island{position:absolute;top:13px;left:50%;transform:translateX(-50%);width:96px;height:24px;border-radius:999px;background:#000;z-index:20}
.statusbar{height:42px;display:flex;align-items:flex-end;justify-content:space-between;padding:0 20px 5px;font-size:12px;font-weight:700}
.statusbar .sb-r{display:flex;align-items:center;gap:5px}
.statusbar .sb-r svg.lucide{width:14px;height:14px}
.scr-body{flex:1;padding:6px 15px 0;display:flex;flex-direction:column;gap:11px;overflow:hidden}
.scr-head{display:flex;align-items:center;justify-content:space-between}
.scr-title{font-family:Anton;font-size:25px;text-transform:uppercase;letter-spacing:-.5px;line-height:1}
.scr-kicker{font-size:11px;color:var(--muted)}
.avatar{width:38px;height:38px;border-radius:999px;background:var(--peach);border:1.5px solid var(--ink);display:grid;place-items:center;font-family:Anton;font-size:14px}
.scard{background:var(--white);border:1.5px solid var(--ink);border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:9px}
.row{display:flex;align-items:center;gap:8px}
.spread{display:flex;align-items:center;justify-content:space-between}
.dumpbox{display:flex;align-items:center;gap:8px;background:var(--cream);border:1px solid var(--subtle);border-radius:13px;padding:11px 12px;font-size:12px;color:var(--muted)}
.qa{display:flex;gap:6px}
.qchip{flex:1;height:38px;border:1px solid var(--ink);border-radius:12px;background:var(--cream);display:flex;align-items:center;justify-content:center;gap:5px;font-size:10.5px;font-weight:600}
.qchip svg.lucide{width:13px;height:13px}
.badge-ic{width:30px;height:30px;border-radius:10px;border:1px solid var(--ink);display:grid;place-items:center;flex:none}
.badge-ic svg.lucide{width:15px;height:15px}
.count{min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:var(--ink);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center}
.li{display:flex;align-items:center;gap:9px;background:var(--cream);border:1px solid var(--subtle);border-radius:12px;padding:9px 10px}
.li .t{font-size:12px;font-weight:600;flex:1}
.li .m{font-size:10.5px;color:var(--ink2)}
.label{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--ink2)}
.aipill{display:inline-flex;align-items:center;gap:4px;background:var(--lavender);border:1px solid var(--ink);border-radius:999px;padding:4px 9px;font-size:10px;font-weight:600}
.aipill svg.lucide{width:11px;height:11px}
.stats{display:flex;gap:8px}
.stat{flex:1;background:var(--white);border:1px solid var(--subtle);border-radius:13px;padding:9px 11px}
.stat .n{font-family:Anton;font-size:22px;line-height:1}
.stat .l{font-size:10px;color:var(--muted)}
.folders{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.folder{border:1.5px solid var(--ink);border-radius:15px;padding:11px}
.folder .n{font-weight:700;font-size:12.5px;display:flex;align-items:center;gap:6px}
.folder .n svg.lucide{width:14px;height:14px}
.folder .c{font-size:10.5px;color:var(--ink2);margin-top:3px}
.bubble{border:1.5px solid var(--ink);border-radius:15px;padding:10px 12px;font-size:12px;background:#fff;max-width:90%}
.bubble.me{align-self:flex-end;background:var(--ink);color:#fff}
.srcs{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}
.srcs span{font-size:9.5px;font-weight:600;border:1px solid var(--ink);border-radius:999px;padding:4px 8px;display:inline-flex;align-items:center;gap:4px}
.srcs span svg.lucide{width:11px;height:11px}
.waves{display:flex;gap:5px;align-items:center;height:74px;justify-content:center}
.waves i{width:7px;background:var(--ink);border-radius:999px;height:30%;animation:eq 1s ease-in-out infinite}
@keyframes eq{0%,100%{height:16%}50%{height:100%}}
.fab{position:absolute;bottom:74px;left:50%;transform:translateX(-50%);width:58px;height:58px;border-radius:999px;background:var(--ink);display:grid;place-items:center;box-shadow:0 10px 22px rgba(16,16,16,.35);z-index:8}
.fab svg.lucide{width:24px;height:24px;color:#fff}
.fab .ring{position:absolute;inset:0;border-radius:999px;background:var(--rec);opacity:.3;animation:pulse 1.9s ease-out infinite}
@keyframes pulse{0%{transform:scale(1);opacity:.4}100%{transform:scale(2);opacity:0}}
.recdot{width:7px;height:7px;border-radius:999px;background:var(--rec);display:inline-block}
/* in-phone tab bar */
.tabbar{margin:auto 13px 14px;height:54px;background:var(--white);border:1px solid var(--subtle);border-radius:30px;
  display:flex;align-items:center;padding:4px;gap:4px;position:relative}
.tab{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:22px;font-size:8.5px;font-weight:700;letter-spacing:.5px;color:var(--ink2)}
.tab svg.lucide{width:17px;height:17px}
.tab.on{background:var(--ink);color:#fff}

/* tilt */
.tilt{transform:rotate(-3deg);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.tilt-r{transform:rotate(3deg)}
.tilt:hover,.tilt-r:hover{transform:rotate(0)}

/* ---- final / footer ---- */
.final{background:var(--ink);color:var(--cream);text-align:center}
.final h2{color:var(--cream)}
.final .lead{color:#bdbdbd;max-width:560px;margin:18px auto 0}
.final .hero-cta{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:30px}
footer{background:var(--ink);color:#8a8a8a;padding:34px 0;border-top:1px solid #242424}
.foot-in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;font-size:13px}
.foot-in a{color:#bdbdbd;margin-left:18px}
.foot-in a:hover{color:#fff}

/* ====================== LANDING-SPECIFIC ====================== */
.hero{position:relative;background:var(--pink);overflow:hidden;padding:48px 0 90px}
.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 50% -10%,transparent 50%,rgba(16,16,16,.05));pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:30px;align-items:center;position:relative;z-index:2}
.hero h1 span{display:block}
.hero .lead{max-width:520px;margin-top:20px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.hero-note{margin-top:16px;font-size:13px;color:var(--ink2);display:flex;gap:8px;align-items:center}
.dot{width:7px;height:7px;border-radius:999px;background:var(--success);display:inline-block}
.stage{position:relative;display:grid;place-items:center;min-height:420px}
.stage .mascot{width:min(56%,300px);filter:drop-shadow(0 20px 30px rgba(16,16,16,.18))}
.chip{position:absolute;background:var(--white);border:2px solid var(--ink);border-radius:15px;padding:9px 13px;
  font-weight:600;font-size:13px;display:flex;align-items:center;gap:8px;box-shadow:var(--shadow-hard);animation:floaty 6s ease-in-out infinite}
.chip .ci{width:26px;height:26px;border-radius:8px;display:grid;place-items:center}
.chip .ci svg.lucide{width:15px;height:15px}
.chip:nth-of-type(1){top:4%;left:0;animation-delay:0s}
.chip:nth-of-type(2){top:20%;right:-4%;animation-delay:.6s}
.chip:nth-of-type(3){top:52%;left:-6%;animation-delay:1.2s}
.chip:nth-of-type(4){bottom:16%;right:0;animation-delay:1.8s}
.chip:nth-of-type(5){bottom:-1%;left:22%;animation-delay:2.4s}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

.scatter{background:var(--ink);color:var(--cream)}
.scatter .eyebrow{color:#9a9a9a}
.scatter h2{color:var(--cream)}
.scatter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}
.ssave{border:2px solid #2b2b2b;border-radius:18px;padding:18px;background:#181818;transition:transform .25s,border-color .25s}
.ssave:hover{transform:translateY(-6px) rotate(-1deg);border-color:#3d3d3d}
.ssave .k{font-family:"Geist Mono",monospace;font-size:11px;letter-spacing:1px;color:#8a8a8a;text-transform:uppercase;display:flex;align-items:center;gap:7px}
.ssave .k svg.lucide{width:14px;height:14px}
.ssave .v{font-family:Anton;font-size:22px;margin-top:8px;text-transform:uppercase;letter-spacing:-.3px}
.ssave .c{color:#9a9a9a;font-size:13px;margin-top:6px}
.solve-line{display:flex;align-items:center;gap:18px;margin-top:44px;flex-wrap:wrap}
.solve-line .arrow svg.lucide{width:28px;height:28px;color:#6a6a6a}
.solve-pill{background:var(--pink);color:var(--ink);border-radius:999px;padding:14px 24px;font-family:Anton;font-size:clamp(20px,2.6vw,30px);text-transform:uppercase;letter-spacing:-.3px}

.steps{display:grid;gap:clamp(56px,8vw,110px)}
.step{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.step:nth-child(even) .step-copy{order:2}
.step-num{font-family:"Geist Mono",monospace;font-weight:500;font-size:13px;letter-spacing:2px;color:var(--muted)}
.step h3{margin:14px 0;font-size:clamp(26px,3.4vw,40px)}
.step-feats{margin-top:18px;display:flex;flex-direction:column;gap:10px}
.feat{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;color:var(--ink2)}
.feat .tick{flex:none;width:22px;height:22px;border-radius:999px;background:var(--ink);color:#fff;display:grid;place-items:center;margin-top:1px}
.feat .tick svg.lucide{width:13px;height:13px}
.phone-hold{display:grid;place-items:center}

.fgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.fcard{border:2px solid var(--ink);border-radius:var(--r);padding:26px;background:var(--white);transition:transform .25s,box-shadow .25s}
.fcard:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.fcard .fi{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;border:2px solid var(--ink);margin-bottom:16px}
.fcard .fi svg.lucide{width:24px;height:24px}
.fcard h4{font-family:Inter;font-weight:700;font-size:18px;text-transform:none;letter-spacing:0}
.fcard p{margin-top:8px;font-size:14px;color:var(--ink2)}

.marq{display:flex;gap:18px;white-space:nowrap;animation:scroll 26s linear infinite;width:max-content}
.marq.rev{animation-direction:reverse;margin-top:18px}
.marq:hover{animation-play-state:paused}
.mtile{font-family:Anton;font-size:clamp(28px,4.5vw,56px);text-transform:uppercase;letter-spacing:-.5px;
  padding:10px 28px;border:2px solid var(--ink);border-radius:999px;display:inline-flex;align-items:center;gap:14px}
.mtile.fill{background:var(--ink);color:var(--cream)}
.mtile .d{width:12px;height:12px;border-radius:999px}
@keyframes scroll{to{transform:translateX(-50%)}}

.privacy{background:var(--sky)}
.priv-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:30px}
.priv-chip{background:#fff;border:2px solid var(--ink);border-radius:999px;padding:14px 22px;font-weight:600;display:flex;gap:10px;align-items:center}
.priv-chip svg.lucide{width:18px;height:18px}

/* ====================== WALKTHROUGH-SPECIFIC ====================== */
.wt-hero{background:var(--green);padding:70px 0 60px}
.wt-toc{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.wt-toc a{font-size:13px;font-weight:600;border:1.5px solid var(--ink);border-radius:999px;padding:9px 16px;background:#fff;transition:transform .15s,background .15s}
.wt-toc a:hover{transform:translateY(-2px);background:var(--ink);color:#fff}
.wt{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center;scroll-margin-top:90px}
.wt:nth-child(even) .wt-copy{order:2}
.wt-tag{display:inline-flex;align-items:center;gap:8px;font-family:"Geist Mono",monospace;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.wt-tag .n{width:26px;height:26px;border-radius:8px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:12px}
.wt h2{font-size:clamp(28px,4vw,46px)}
.wt-copy>.lead{margin-top:16px}
.block{margin-top:22px}
.block .bh{display:flex;align-items:center;gap:9px;font-weight:700;font-size:14px;margin-bottom:9px}
.block .bh .bi{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;border:1.5px solid var(--ink);flex:none}
.block .bh .bi svg.lucide{width:15px;height:15px}
.block ul{margin:0;padding-left:2px;list-style:none;display:flex;flex-direction:column;gap:8px}
.block li{display:flex;gap:9px;font-size:14px;color:var(--ink2);align-items:flex-start}
.block li:before{content:"";flex:none;width:7px;height:7px;border-radius:999px;background:var(--ink);margin-top:7px}
.problem{background:var(--cream);border:1.5px solid var(--ink);border-left-width:5px;border-radius:14px;padding:14px 16px;margin-top:22px}
.problem .pl{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--rec);display:flex;align-items:center;gap:7px}
.problem .pl svg.lucide{width:14px;height:14px}
.problem p{margin-top:6px;font-size:14px;color:var(--ink2)}
.wt-band{background:var(--lavender)}
.wt-band.alt{background:var(--peach)}
.wt-band.sky{background:var(--sky)}
.wt-band.pink{background:var(--pink)}
.wt-band.white{background:var(--white)}

/* ====================== PROBLEMS / USE-CASES PAGE ====================== */
.pb-hero{background:var(--peach);padding:70px 0 60px}
.problems-wrap{display:flex;flex-direction:column;gap:22px}
.platform{border:2px solid var(--ink);border-radius:var(--r);overflow:hidden;background:#fff;transition:transform .25s,box-shadow .25s}
.platform:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.platform .ph{display:flex;align-items:center;gap:13px;padding:15px 20px;border-bottom:1.5px solid var(--ink)}
.platform .ph .pic{width:44px;height:44px;border-radius:12px;border:1.5px solid var(--ink);display:grid;place-items:center;flex:none}
.platform .ph .pic svg.lucide{width:22px;height:22px}
.platform .ph .pname{font-family:Anton;font-size:21px;text-transform:uppercase;letter-spacing:-.3px;line-height:1}
.platform .ph .psub{font-size:11.5px;color:var(--muted);margin-top:2px}
.platform .ph .ptag{margin-left:auto;font-size:10.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--rec);display:flex;align-items:center;gap:6px;text-align:right}
.platform .ph .ptag svg.lucide{width:14px;height:14px}
.pcols{display:grid;grid-template-columns:1fr 1fr}
.pcol{padding:18px 20px}
.pcol.today{background:var(--cream)}
.pcol.sol{background:var(--green);border-left:1.5px solid var(--ink)}
.pcol .cl{font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;margin-bottom:9px;display:flex;align-items:center;gap:7px}
.pcol .cl svg.lucide{width:15px;height:15px}
.pcol.today .cl{color:var(--rec)}
.pcol.sol .cl{color:var(--success)}
.pcol p{font-size:13.5px;color:var(--ink2);line-height:1.55}
@media(max-width:680px){.pcols{grid-template-columns:1fr}.pcol.sol{border-left:0;border-top:1.5px solid var(--ink)}}

.uc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.uc{border:2px solid var(--ink);border-radius:var(--r);padding:24px;background:#fff;transition:transform .25s,box-shadow .25s}
.uc:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.uc .ui{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;border:2px solid var(--ink);margin-bottom:14px}
.uc .ui svg.lucide{width:24px;height:24px}
.uc h4{font-family:Inter;font-weight:700;font-size:17px;text-transform:none;letter-spacing:0}
.uc p{margin-top:8px;font-size:13.5px;color:var(--ink2)}
.uc .ucsteps{margin-top:12px;display:flex;flex-direction:column;gap:6px}
.uc .ucstep{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--ink2)}
.uc .ucstep .num{flex:none;width:18px;height:18px;border-radius:999px;background:var(--ink);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;margin-top:1px}

/* problems hero with illustration */
.pb-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center}
.pb-art{border:2px solid var(--ink);border-radius:24px;overflow:hidden;background:#fff;box-shadow:var(--shadow);transform:rotate(2deg);transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.pb-art:hover{transform:rotate(0)}
.pb-art img{display:block;width:100%;height:auto}
@media(max-width:860px){.pb-grid{grid-template-columns:1fr;gap:18px}}

/* before / after visuals inside platform cards — symmetric rows */
.pviz{display:flex;flex-direction:column;gap:7px;margin-bottom:13px}
.prow{display:flex;align-items:center;gap:8px;border:1.5px solid var(--ink);border-radius:10px;padding:8px 11px;font-size:11.5px;font-weight:600;background:#fff}
.prow svg.lucide{width:14px;height:14px;flex:none}
.prow .pt{margin-left:auto;font-size:8.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;border-radius:999px;padding:3px 9px;border:1px solid var(--ink);white-space:nowrap}
.pviz.lost .prow{color:var(--muted);border-style:dashed;border-color:#c9c2b6}
.pviz.lost .prow svg.lucide{color:var(--rec)}
.pviz.lost .prow .pt{color:var(--rec);border-color:var(--rec);background:#fff}
.pviz.found .prow{color:var(--ink)}
.pviz.found .prow .pt{background:var(--tag-green)}

/* use-case image banner */
.uc-img{height:150px;border:2px solid var(--ink);border-radius:16px;overflow:hidden;margin-bottom:16px;background:var(--cream)}
.uc-img img{display:block;width:100%;height:100%;object-fit:cover}

/* ---- cross-page "keep exploring" connector ---- */
.next{background:var(--cream)}
.next-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:10px}
.next-card{display:flex;flex-direction:column;gap:10px;border:2px solid var(--ink);border-radius:var(--r);padding:28px;background:var(--white);border-top-width:7px;transition:transform .25s,box-shadow .25s}
.next-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.next-card .nk{font-family:"Geist Mono",monospace;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}
.next-card .nk svg.lucide{width:15px;height:15px}
.next-card h3{font-size:clamp(22px,2.6vw,28px)}
.next-card p{font-size:14px;color:var(--ink2)}
.next-card .go{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px}
.next-card .go svg.lucide{width:16px;height:16px;transition:transform .2s}
.next-card:hover .go svg.lucide{transform:translateX(4px)}
@media(max-width:760px){.next-grid{grid-template-columns:1fr}}

/* ====================== B: THE SEARCH THAT FAILS ====================== */
.sf-box{max-width:760px;margin:0 auto;border:2px solid var(--ink);border-radius:24px;background:var(--white);padding:22px;box-shadow:var(--shadow)}
.sf-bar{display:flex;align-items:center;gap:10px;border:2px solid var(--ink);border-radius:14px;padding:14px 16px;font-size:clamp(15px,2.2vw,21px);font-weight:600}
.sf-bar svg.lucide{width:20px;height:20px;flex:none}
.sf-cursor{width:2px;height:20px;background:var(--ink);animation:blink 1s step-end infinite}
@keyframes blink{50%{opacity:0}}
.sf-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.sf-chip{font-family:inherit;font-size:12.5px;font-weight:600;border:1.5px solid var(--ink);background:var(--cream);border-radius:999px;padding:8px 14px;cursor:pointer;transition:transform .15s,background .15s,color .15s}
.sf-chip:hover{transform:translateY(-2px)}
.sf-chip.is-active{background:var(--ink);color:var(--white)}
.sf-results{margin-top:18px;display:flex;flex-direction:column;gap:8px}
.sf-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1.5px solid var(--subtle);border-radius:12px;padding:11px 14px;background:var(--cream);opacity:.35;transform:translateY(5px);transition:opacity .35s,transform .35s,border-color .35s,background .35s}
.sf-row.show{opacity:1;transform:none}
.sf-app{display:flex;align-items:center;gap:9px;font-weight:700;font-size:13px}
.sf-app svg.lucide{width:16px;height:16px}
.sf-stat{font-size:12px;font-weight:600;color:var(--muted);text-align:right}
.sf-row.fail{border-color:#e9b9b9;background:#fff}
.sf-row.fail .sf-stat{color:var(--rec)}
.sf-mk{width:24px;height:24px;border-radius:7px;background:var(--ink);display:grid;place-items:center}
.sf-mk svg.lucide{width:15px;height:15px;color:var(--white)}
.sf-row.win{background:var(--green);border-color:var(--ink);opacity:1}
.sf-row.win .sf-stat{color:var(--success);font-weight:700}
.sf-note{text-align:center;margin-top:24px;font-size:16px;color:var(--ink2)}
@media(max-width:560px){.sf-box{padding:15px}.sf-row{flex-direction:column;align-items:flex-start;gap:5px}.sf-stat{text-align:left}}

/* ====================== C: A DAY TIMELINE ====================== */
.day{background:var(--cream)}
.day-toggle{display:flex;gap:5px;justify-content:center;background:var(--white);border:1.5px solid var(--ink);border-radius:999px;padding:5px;width:max-content;max-width:100%;margin:0 auto 38px}
.dt{font-family:inherit;font-weight:700;font-size:13px;border:0;background:transparent;border-radius:999px;padding:9px 18px;cursor:pointer;color:var(--ink2);transition:background .2s,color .2s}
.dt.is-active{background:var(--ink);color:var(--white)}
.timeline{max-width:660px;margin:0 auto;position:relative;padding-left:58px}
.timeline:before{content:"";position:absolute;left:24px;top:8px;bottom:8px;width:2px;background:var(--ink);opacity:.16}
.tl{position:relative;margin-bottom:14px}
.tl-time{position:absolute;left:-58px;top:15px;font-family:"Geist Mono",monospace;font-size:12px;font-weight:600;color:var(--muted)}
.tl:before{content:"";position:absolute;left:-36px;top:17px;width:13px;height:13px;border-radius:999px;background:var(--white);border:2px solid var(--ink);z-index:1}
.tl-card{display:flex;align-items:center;gap:12px;border:1.5px solid var(--ink);border-radius:16px;background:var(--white);padding:13px 15px;transition:border-color .35s,opacity .35s}
.tl-ic{width:40px;height:40px;border-radius:11px;border:1.5px solid var(--ink);display:grid;place-items:center;flex:none}
.tl-ic svg.lucide{width:20px;height:20px}
.tl-txt{flex:1;min-width:0}
.tl-t{font-weight:700;font-size:14px}
.tl-m{font-size:11.5px;color:var(--muted);margin-top:2px}
.tl-badge{font-size:9.5px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;border-radius:999px;padding:5px 10px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--ink);white-space:nowrap;flex:none}
.tl-badge svg.lucide{width:12px;height:12px}
.tl-badge.today{color:var(--rec);border-color:var(--rec);background:var(--white)}
.tl-badge.lazy{display:none;color:var(--success);border-color:var(--success);background:var(--tag-green)}
.timeline.lazy .tl-badge.today{display:none}
.timeline.lazy .tl-badge.lazy{display:inline-flex}
.timeline.lazy .tl-card{border-color:var(--success)}
.timeline:not(.lazy) .tl-card{opacity:.7}
.day-foot{text-align:center;margin-top:34px;font-family:Anton;font-size:clamp(20px,3.2vw,32px);text-transform:uppercase;letter-spacing:-.4px;line-height:1.1}
.day-foot .hi{color:var(--success)}
@media(max-width:560px){
  .timeline{padding-left:0}
  .timeline:before{display:none}
  .tl:before{display:none}
  .tl-time{position:static;display:block;margin-bottom:5px}
  .tl-card{flex-wrap:wrap}
  .tl-badge{margin-left:50px}
}

@media(max-width:860px){
  .hero-grid{grid-template-columns:1fr;gap:10px}
  .stage{order:-1;min-height:380px}
  .step,.wt{grid-template-columns:1fr;gap:30px}
  .step:nth-child(even) .step-copy,.wt:nth-child(even) .wt-copy{order:0}
  .scatter-grid{grid-template-columns:1fr 1fr}
  .fgrid{grid-template-columns:1fr}
  .uc-grid{grid-template-columns:1fr}
}
@media(max-width:520px){.scatter-grid{grid-template-columns:1fr}}

/* small phones: tighten + kill any rotation-based horizontal overflow */
@media(max-width:560px){
  section{padding:52px 0}
  .hero{padding:30px 0 58px}
  .wt-hero,.pb-hero{padding:48px 0 44px}
  .tilt,.tilt-r,.pb-art{transform:none!important}
  .phone{width:86vw;max-width:340px}
  .section-head{margin-bottom:32px}
  .platform .ph{flex-wrap:wrap;gap:10px}
  .platform .ph .ptag{margin-left:0;order:3;width:100%;justify-content:flex-start}
  .pcol{padding:16px}
  .solve-line{gap:10px}
  .solve-pill{font-size:19px;padding:11px 16px}
  .hero-cta{width:100%}
  .hero-cta .btn{flex:1 1 100%;justify-content:space-between}
  .foot-in{flex-direction:column;align-items:flex-start;gap:10px}
  .foot-in a{margin-left:0;margin-right:16px}
}

/* ====================== BLOG ====================== */
.blog-hero{background:var(--green);padding:70px 0 56px}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.blog-card{display:flex;flex-direction:column;gap:10px;border:2px solid var(--ink);border-radius:var(--r);padding:24px;background:var(--white);transition:transform .25s,box-shadow .25s}
.blog-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.blog-cat,.post-cat,.rel-cat{align-self:flex-start;font-size:10.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;border:1.5px solid var(--ink);border-radius:999px;padding:5px 11px}
.blog-card h3{font-family:Inter;font-weight:700;font-size:19px;line-height:1.25;text-transform:none;letter-spacing:0}
.blog-card p{font-size:13.5px;color:var(--ink2);flex:1}
.blog-meta{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--muted);margin-top:4px}
.blog-meta svg.lucide{width:14px;height:14px}
.blog-meta .go,.rel-card .go{margin-left:auto;display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-weight:700}
.blog-meta .go svg.lucide,.rel-card .go svg.lucide{width:15px;height:15px;transition:transform .2s}
.blog-card:hover .go svg.lucide{transform:translateX(4px)}
@media(max-width:900px){.blog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.blog-grid{grid-template-columns:1fr}}

/* article */
.post{padding:48px 0 20px}
.post-wrap{max-width:760px}
.crumbs{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:18px}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--ink)}
.crumbs svg.lucide{width:14px;height:14px}
.post h1{font-size:clamp(30px,5vw,52px);margin:12px 0 16px}
.post-meta{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);margin-bottom:26px}
.post-meta svg.lucide{width:15px;height:15px}
.post-body{font-size:16.5px;line-height:1.75;color:var(--ink2)}
.post-body h2{font-family:Anton;font-size:clamp(22px,3vw,30px);text-transform:uppercase;letter-spacing:-.3px;color:var(--ink);margin:36px 0 12px}
.post-body h3{font-family:Inter;font-weight:700;font-size:18px;color:var(--ink);margin:24px 0 8px}
.post-body p{margin:0 0 16px}
.post-body ul,.post-body ol{margin:0 0 18px;padding-left:22px;display:flex;flex-direction:column;gap:9px}
.post-body li{padding-left:4px}
.post-body a{color:#1a56db;text-decoration:underline;text-underline-offset:2px;font-weight:600}
.post-body b,.post-body strong{color:var(--ink)}
.faq{border-top:1.5px solid var(--subtle);padding:16px 0}
.faq-q{font-weight:700;font-size:16px;color:var(--ink);margin-bottom:6px}
.faq-a{font-size:15px}
.post-cta{margin:38px 0 8px;border:2px solid var(--ink);border-radius:var(--r);background:var(--bg,var(--peach));background:var(--peach);overflow:hidden}
.post-cta-in{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 28px;flex-wrap:wrap}
.post-cta h3{font-family:Anton;font-size:clamp(22px,3vw,30px);text-transform:uppercase;letter-spacing:-.3px;margin:6px 0}
.post-cta p{font-size:14px;color:var(--ink2);max-width:520px;margin:0}
.post-cta .btn{flex:none}
.rel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rel-card{display:flex;flex-direction:column;gap:10px;border:2px solid var(--ink);border-radius:var(--r);padding:22px;background:var(--white);transition:transform .25s,box-shadow .25s}
.rel-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.rel-t{font-weight:700;font-size:16px;line-height:1.3;flex:1}
@media(max-width:780px){.rel-grid{grid-template-columns:1fr}.post-cta-in{flex-direction:column;align-items:flex-start}}

@media (prefers-reduced-motion: reduce){
  *{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
  html{scroll-behavior:auto}
}
