/* we1 landing — quiet, precise, optimistic */
.eyebrow{font-size:14px;font-weight:600;color:var(--accent);letter-spacing:.01em}
.label-sm{font-size:13px;font-weight:600;color:var(--text-2)}
.strong{font-weight:600}
.link{color:#2B38C9;font-weight:600;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:44px}
.link:hover{color:var(--accent-hover)}

/* hero */
.hero{padding-block:var(--s6) var(--s7)}
.hero-grid{display:grid;gap:var(--s6);align-items:center}
.hero-copy{display:grid;gap:var(--s4);justify-items:start}
.hero-h1{font-size:clamp(36px,9.6vw,40px);line-height:1.14;max-width:14ch;text-wrap:balance}
.hero-cta{display:flex;flex-wrap:wrap;gap:var(--s3);width:100%}
.hero-cta .btn{flex:1 1 200px}
@media(min-width:768px){
  .hero{padding-block:var(--s7) var(--s8)}
  .hero-h1{font-size:clamp(44px,6vw,56px);max-width:none}
  .hero-cta{width:auto}.hero-cta .btn{flex:none}
}
@media(min-width:1024px){
  .hero-grid{grid-template-columns:46fr 54fr;gap:var(--s8)}
  .hero-h1{font-size:clamp(56px,4.4vw,64px);line-height:1.1}
}

/* product preview */
.preview{display:grid;gap:var(--s3)}
.pv-card{background:var(--surface);border:1px solid var(--border);border-radius:24px;box-shadow:var(--shadow-2);padding:var(--s5);display:grid;gap:var(--s4)}
.pv-bar{display:flex;justify-content:space-between;align-items:center}
.pv-title{font-size:13px;font-weight:600;color:var(--text-2)}
.pv-profile{display:flex;gap:var(--s4);align-items:center}
.pv-profile .avatar-lg{--sz:72px}
.pv-who{display:grid;gap:4px;min-width:0}
.pv-who .chips{margin-top:6px}
.pv-project{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-card);padding:var(--s4);display:grid;gap:8px}
.pv-role{font-size:14px}
.pv-progress{display:grid;gap:8px}
.bar{height:8px;border-radius:99px;background:#E3E6F2;overflow:hidden}
.bar i{display:block;height:100%;background:var(--accent);border-radius:99px}
.preview figcaption{padding-inline:var(--s2)}

/* hero entrance — one orchestrated sequence */
@keyframes h-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.h-in{animation:h-in .6s var(--ease) both;animation-delay:calc(var(--d,0)*90ms)}

/* section reveal (<=300ms), enabled by JS only */
.rev .reveal{opacity:0;transform:translateY(12px);transition:opacity .28s ease-out,transform .28s ease-out}
.rev .reveal.in{opacity:1;transform:none}

/* sections */
.sec{padding-block:var(--s8)}
.sec-white{background:var(--surface);border-block:1px solid var(--border)}
.sec-head{display:grid;gap:var(--s3);margin-bottom:var(--s6);max-width:720px}
.spread-head{max-width:none;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:var(--s4)}
.spread-head>div{display:grid;gap:var(--s3);max-width:640px}
.cols-3{grid-template-columns:1fr;gap:var(--s4)}
@media(min-width:768px){.cols-3{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.cols-3{grid-template-columns:repeat(3,1fr)}.sec{padding-block:var(--s9)}}
.note{margin-top:var(--s5)}

/* L03 */
.pair{display:grid;gap:var(--s3);align-content:start}
.situation{font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.01em}
.action{color:var(--text-2)}
.arrow{color:var(--accent);font-weight:700;margin-right:4px}

/* L04 */
.steps{counter-reset:s;align-items:stretch}
.step{display:grid;gap:var(--s3);align-content:start}
.step-n{display:flex;align-items:center;gap:12px;font-size:19px;font-weight:600;letter-spacing:-.01em}
.step-n>span[aria-hidden]{width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:#2B38C9;display:grid;place-items:center;font-size:15px;flex:none}
.frag{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-card);padding:var(--s4);display:grid;gap:10px;margin-top:var(--s2)}
.frag-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.frag-btn{justify-self:start;background:var(--accent);color:#fff;border-radius:var(--r-field);padding:8px 14px;font-size:14px;font-weight:600}

/* L05 project cards */
.pc{display:flex;flex-direction:column;gap:var(--s3);padding:0;overflow:hidden;position:relative}
.pc-cover{height:96px;display:flex;align-items:flex-end;padding:var(--s3) var(--s4);background:var(--accent-soft);border-bottom:1px solid var(--border)}
.pc-cover span{font-size:13px;font-weight:600;color:#2B38C9}
.pc-body{display:grid;gap:var(--s3);padding:0 var(--s5) var(--s5);flex:1;align-content:start}
.pc-body .title a::after{content:"";position:absolute;inset:0}
.pc-body .title a:focus-visible{outline-offset:-3px}
.pc-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.pc-sum{color:var(--text-2);font-size:15px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pc-roles{display:grid;gap:4px;font-size:14px}
.pc-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:600;color:#2B38C9;min-height:24px}
.pc-skel{display:grid;gap:var(--s3);align-content:start}
.state{grid-column:1/-1}
.state .card{display:grid;gap:var(--s3);justify-items:center;text-align:center;padding:var(--s7) var(--s5)}
.state h3{font-size:20px;font-weight:600}

/* L06 profile */
.prof{background:var(--bg);border:1px solid var(--border);border-radius:24px;padding:var(--s5);display:grid;gap:var(--s5)}
.prof-top{display:flex;gap:var(--s4);align-items:center;flex-wrap:wrap}
.prof-name{font-size:clamp(22px,2.4vw,26px)}
.prof-grid{display:grid;gap:var(--s4)}
@media(min-width:900px){.prof-grid{grid-template-columns:1.2fr 1fr .8fr}.prof{padding:var(--s6)}}
.prof-col{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-card);padding:var(--s4);display:grid;gap:var(--s3);align-content:start}
.item{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--border)}
.item:first-child{border-top:0;padding-top:0}
.ev{display:inline-flex;align-items:center;min-height:26px;padding:2px 10px;border-radius:99px;font-size:12.5px;font-weight:600;white-space:nowrap;border:1px solid transparent}
.ev-self{background:#ECEEF5;color:var(--text)}
.ev-sys{background:var(--accent-soft);color:#2B38C9}
.ev-org{background:transparent;color:var(--text-2);border:1px dashed var(--border-control)}
.journey{display:grid;gap:0}
.journey li{display:flex;gap:12px;padding-bottom:var(--s4);position:relative}
.journey li:last-child{padding-bottom:0}
.journey li:not(:last-child)::before{content:"";position:absolute;left:5px;top:16px;bottom:0;width:2px;background:var(--border)}
.dot{width:12px;height:12px;border-radius:50%;background:var(--accent);margin-top:6px;flex:none}
.legend{border-top:1px solid var(--border);padding-top:var(--s4);display:grid;gap:var(--s2)}
.legend ul{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5)}
.legend li{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

/* L07 */
.growth .card{display:grid;gap:var(--s3);align-content:start}
.growth .btn{justify-self:start}
.bdg{display:flex;gap:12px;align-items:flex-start}
.bdg-i{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex:none;background:#ECEEF5;color:var(--text-2)}
.bdg-i.on{background:var(--accent);color:#fff}
.bdg-i svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.callout{margin-top:var(--s5);padding:var(--s4) var(--s5);border-radius:var(--r-card);background:var(--accent-soft);color:#1F2A9C;max-width:820px}

/* L08 */
.beta{display:grid;gap:var(--s5);align-items:center}
.beta .lead{max-width:60ch}
.beta-cta{display:grid;gap:var(--s3);justify-items:start}
@media(min-width:900px){.beta{grid-template-columns:1fr auto;gap:var(--s8)}}

/* L09 */
.two{display:grid;gap:var(--s7)}
@media(min-width:1024px){.two{grid-template-columns:1fr 1fr;gap:var(--s8);align-items:start}}
.faq{margin-top:var(--s5);border-top:1px solid var(--border)}
.faq details{border-bottom:1px solid var(--border)}
.faq summary{list-style:none;cursor:pointer;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:var(--s4);font-weight:600;font-size:17px;padding:var(--s3) 0}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";width:10px;height:10px;border-right:2px solid var(--text-2);border-bottom:2px solid var(--text-2);transform:rotate(45deg);transition:transform .2s var(--ease);flex:none;margin-right:6px}
.faq details[open] summary::after{transform:rotate(-135deg)}
.faq details p{color:var(--text-2);padding-bottom:var(--s4);max-width:60ch}
.contact{display:grid;gap:var(--s3);align-content:start}
.form{gap:var(--s4)}
.form .btn{justify-self:start;min-width:160px}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}

/* L10 */
.final-sec{padding-bottom:var(--s4)}
.final{background:var(--text);color:#fff;border-radius:24px;padding:var(--s7) var(--s5);display:grid;gap:var(--s4);justify-items:start}
.final-p{color:#C3C8D6;max-width:52ch}
.final .btn-primary:focus-visible{outline-color:#fff}
@media(min-width:768px){.final{padding:var(--s8) var(--s7)}}

@media(max-width:600px){.ftr{margin-top:var(--s6)}}
@media(prefers-reduced-motion:reduce){.h-in{animation:none}.rev .reveal{opacity:1;transform:none;transition:none}}

/* legal + 404 pages */
.doc{padding-block:var(--s7) var(--s6);max-width:760px}
.doc h1{margin-bottom:var(--s3)}
.doc h2{font-size:22px;line-height:1.3;font-weight:600;margin-top:var(--s6);margin-bottom:var(--s2)}
.doc p,.doc li{color:#2A2F3A;max-width:68ch}
.doc p+p,.doc p+ul{margin-top:var(--s3)}
.doc ul{list-style:disc;padding-left:22px;display:grid;gap:6px;margin-top:var(--s2)}
.doc .meta{color:var(--text-2);font-size:14px}
.doc .callout{margin-top:var(--s5)}
.nf{min-height:60vh;display:grid;align-content:center;justify-items:start;gap:var(--s4);padding-block:var(--s8)}
.nf-code{font-size:14px;font-weight:600;color:var(--accent)}
[hidden]{display:none!important}

/* v2: hero find-preview */
.pv-query{display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 14px;border:1px solid var(--border-control);border-radius:var(--r-field);background:var(--bg);font-size:15px;font-weight:500;min-width:0}
.pv-query svg{width:20px;height:20px;flex:none;fill:none;stroke:var(--text-2);stroke-width:2;stroke-linecap:round}
.pv-query span{min-width:0;overflow-wrap:anywhere}
.pv-person{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-card);padding:var(--s4);display:grid;gap:var(--s4)}
.reasons{display:flex;flex-wrap:wrap;gap:8px}
.reasons li{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:99px;background:var(--surface);border:1px solid var(--border);font-size:14px;font-weight:500}
.reasons li span{color:var(--ok);font-weight:700}
.pv-foot{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);flex-wrap:wrap}
.final-g{color:#C3C8D6}

/* v2: grids */
.cols-4,.cols-5{grid-template-columns:1fr;gap:var(--s4)}
@media(min-width:768px){.cols-4,.cols-5{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.cols-4{grid-template-columns:repeat(4,1fr)}.cols-5{grid-template-columns:repeat(5,1fr)}}
.steps.cols-5 .step{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-card);padding:var(--s4)}
.steps.cols-5 .step-n{font-size:17px}

/* v2: smart search */
.search-copy .ex li{display:grid;gap:2px}
.flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-weight:600}
.flow span{padding:6px 14px;border-radius:99px;background:var(--accent-soft);color:#2B38C9}
.flow i{font-style:normal;color:var(--text-2)}
.sdemo{display:grid;gap:var(--s3);align-content:start;min-width:0}
.sdemo form{display:grid;gap:6px}
.sd-ex{display:flex;flex-wrap:wrap;gap:8px}
.sd-ex .chip{min-height:44px;padding:0 14px;border:1px solid var(--border-control);background:var(--surface);cursor:pointer;font-weight:600}
.sd-ex .chip:hover{background:var(--bg)}
.sd-out{display:grid;gap:var(--s3);padding-top:var(--s2);border-top:1px solid var(--border)}
.sd-counts{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.sd-counts div{background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:8px 12px}
.sd-counts b{display:block;font-size:22px;line-height:1.2;font-variant-numeric:tabular-nums}
.sd-counts span{font-size:13px;color:var(--text-2)}
.sd-list{display:grid;gap:6px}
.sd-list li{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:15px}
.sd-list a{font-weight:600;text-decoration:underline;text-underline-offset:3px;min-height:32px;display:inline-flex;align-items:center;overflow-wrap:anywhere}

/* v2: features, compare */
.feat{display:grid;gap:var(--s3);align-content:start}
.feat .link{justify-self:start}
@media(min-width:1024px){.feat-wide{grid-column:span 3;grid-template-columns:1fr 1fr;gap:var(--s3) var(--s6)}.feat-wide>.frag{grid-row:1/span 2;grid-column:2;margin:0}}
.proofs{display:grid;gap:8px;font-size:16px}
.tbl-wrap{overflow-x:auto;max-width:720px;border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface)}
.cmp{width:100%;border-collapse:collapse;font-size:16px}
.cmp th,.cmp td{text-align:left;padding:14px 20px;border-bottom:1px solid var(--border)}
.cmp thead th{font-size:13px;color:var(--text-2);font-weight:600}
.cmp tbody th{font-weight:600}
.cmp tr:last-child>*{border-bottom:0}
.cmp .us>*{background:var(--accent-soft);color:#1F2A9C;font-weight:600}
.why-line{margin-top:var(--s5);font-size:clamp(22px,3vw,30px);font-weight:600;letter-spacing:-.015em}
