/* ============ Batch 1 pages · About, Pulse, Patient Truth, Case studies, Contact, coming soon, legal, 404 ============ */
/* everything below uses new class names only, so the homepage is unaffected */
.nav-links a[aria-current="page"],.nav-call[aria-current="page"]{color:var(--ink)}
.h1.sm{font-size:clamp(40px,5vw,68px)}

/* page hero */
.pg-hero{padding:88px 0 96px}
.pg-hero .hero-h{gap:24px}
.crumb{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}
.crumb a{display:inline-flex;align-items:center;min-height:28px;color:var(--ink-3)}
.crumb a:hover{color:var(--ink)}
.crumb .sep{color:var(--line-2)}
.pg-row{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:end;margin-top:40px}
.pg-row .lede{max-width:560px}
.pg-meta{display:flex;flex-direction:column;gap:14px;align-items:flex-end}
.pg-split{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:72px;align-items:center}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:64px;border-top:1px solid var(--line)}
.facts>div{display:flex;flex-direction:column;gap:6px;padding:18px 24px 0 0}
.facts b{font-size:16px;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.facts .t{font-size:14.5px;line-height:1.5;color:var(--ink-2)}

/* about */
.story{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:start}
.story-l{position:sticky;top:108px;display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.story-r{display:flex;flex-direction:column;gap:24px}
.story-r p{font-size:18px;line-height:1.65;color:var(--ink-2);text-wrap:pretty}
.story-r p.lead{font-size:clamp(21px,2.1vw,26px);font-weight:300;letter-spacing:-.02em;line-height:1.4;color:var(--ink)}
.quote{display:flex;flex-direction:column;gap:14px;margin-top:16px;padding-top:28px;border-top:1px solid var(--line)}
.quote p.q{font-size:clamp(22px,2.4vw,30px);font-weight:300;letter-spacing:-.025em;line-height:1.3;color:var(--ink);text-wrap:balance}
.issues.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.issues.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.founder{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:72px;align-items:start}
.ph{display:flex;flex-direction:column;justify-content:flex-end;gap:6px;aspect-ratio:4/5;padding:20px;border:1px dashed var(--line-2);border-radius:4px;background:var(--bg)}
.founder-b{display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.founder-n{display:flex;flex-direction:column;gap:10px}
.kv{display:flex;flex-direction:column;width:100%;border-top:1px solid var(--line)}
.kv>div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;align-items:baseline;padding:13px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.5;color:var(--ink-2)}
.kv a{color:var(--blue-ink)}
.kv a:hover{color:var(--ink)}
.links-row{display:flex;flex-wrap:wrap;gap:0 28px}
/* founder portrait, woven into the About story column */
.fdr{display:flex;flex-direction:column;gap:14px;width:100%;max-width:320px;margin:16px 0 0}
.fdr figcaption{display:flex;flex-direction:column;gap:6px}
.fdr b{font-size:17px;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.fdr-l{display:flex;flex-wrap:wrap;gap:0 20px}
.fdr-l a{display:inline-flex;align-items:center;min-height:44px;font-size:14.5px;color:var(--blue-ink)}
.fdr-l a:hover{color:var(--ink)}
.duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.panel{display:flex;flex-direction:column;gap:20px;align-items:flex-start;padding:40px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}
.panel .tlink{margin-top:auto}

/* link lists */
.go{display:flex;flex-direction:column;width:100%;border-top:1px solid var(--line)}
.go a{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:16px;align-items:center;min-height:64px;padding:12px 4px 12px 0;border-bottom:1px solid var(--line);transition:background-color .15s}
.go a:hover{background:rgba(10,14,26,.03)}
.go-t{display:flex;flex-direction:column;gap:3px;min-width:0}
.go-k{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:16px;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.go-k .chip{height:20px;padding:0 7px;font-size:9.5px}
.go .d{font-size:14px;line-height:1.5;color:var(--ink-2)}
.go .ic{width:16px;height:16px;color:var(--ink-3);transition:transform .15s,color .15s}
.go a:hover .ic{color:var(--blue);transform:translateX(3px)}
.tk{display:flex;flex-direction:column;width:100%;border-top:1px solid var(--line)}
.tk>div{display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;padding:20px 0;border-bottom:1px solid var(--line)}
.tk .n{padding-top:4px;font-family:var(--mono);font-size:12px;color:var(--ink-3)}
.tk b{display:block;font-size:17px;font-weight:500;letter-spacing:-.01em;line-height:1.35;color:var(--ink)}
.tk .d{display:block;margin-top:4px;font-size:15px;line-height:1.55;color:var(--ink-2)}

/* records and states */
.rs{color:var(--blue-ink);background:var(--blue-soft);box-shadow:inset 0 -1px 0 var(--blue-line);padding:0 3px}
.vchk{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-ink);white-space:nowrap}
.vchk .ic{width:12px;height:12px;stroke-width:2.2}
.st-wip{color:var(--ink-2)}
.st-wip::before{background:transparent;border:1.5px solid currentColor}
.rec{border:1px solid var(--line);border-radius:4px;background:var(--surface);overflow:hidden}
.rec-h{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--line)}
.rec-r{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:12px 20px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:12.5px;line-height:1.6;color:var(--ink)}
.rec-r .k{color:var(--ink-3)}
.rec-f{padding:12px 20px;background:var(--bg);font-family:var(--mono);font-size:11px;line-height:1.5;color:var(--ink-3)}
.fnd{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center;padding:12px 20px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:12.5px;line-height:1.5;color:var(--ink)}
.fnd .chip{justify-self:start}
.notice{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px 24px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}
.notice>.ic{width:22px;height:22px;stroke-width:1.5;color:var(--blue)}
.notice p{font-size:15px;line-height:1.55;color:var(--ink-2)}
.notice p b{font-weight:500;color:var(--ink)}
.note-sec{padding:64px 0}

/* pulse */
.pulse-rep .rep-b{min-height:480px}
.pulse-rep .pd{padding:32px}

/* forms (visual only; the backend is wired separately) */
.fsplit{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:72px;align-items:start}
.fsplit-l{position:sticky;top:108px;display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.fm{display:flex;flex-direction:column;gap:20px;padding:32px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}
.fm-h{display:flex;flex-direction:column;gap:8px}
.fm-t{font-size:22px;font-weight:400;letter-spacing:-.02em;line-height:1.3;color:var(--ink)}
.fm-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.fm-g .full{grid-column:1/-1}
.fld{display:flex;flex-direction:column;gap:7px;min-width:0}
.fld label,.fld-l{font-size:13.5px;font-weight:500;color:var(--ink)}
.fld .opt{font-weight:400;color:var(--ink-3)}
.in{display:block;width:100%;height:46px;padding:0 14px;border:1px solid var(--line-2);border-radius:4px;background:var(--surface);font:inherit;font-size:15px;color:var(--ink);transition:border-color .15s}
.in::placeholder{color:var(--ink-3);opacity:1}
.in:hover{border-color:var(--ink-3)}
.in:focus{border-color:var(--blue);outline:2px solid var(--blue-line);outline-offset:1px}
textarea.in{height:auto;min-height:136px;padding:12px 14px;line-height:1.5;resize:vertical}
.sel{position:relative}
.sel select.in{padding-right:40px;-webkit-appearance:none;appearance:none;cursor:pointer}
.sel .ic{position:absolute;right:14px;top:50%;width:14px;height:14px;margin-top:-7px;color:var(--ink-3);pointer-events:none}
.fm>.btn{width:100%}
.fm-note{font-size:12.5px;line-height:1.55;color:var(--ink-3)}
.fm-note a{color:var(--blue-ink);text-decoration:underline;text-underline-offset:2px}
.fm-ok{display:flex;flex-direction:column;gap:16px;align-items:flex-start;padding:32px;border:1px solid var(--blue-line);border-radius:4px;background:var(--surface)}
.tick{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--blue-line);background:var(--blue-soft);color:var(--blue)}
.tick .ic{width:20px;height:20px;stroke-width:2}
.notify{display:flex;flex-direction:column;gap:8px;width:100%;max-width:540px}
.notify-row{display:flex;gap:8px}
.notify-row .in{flex:1 1 auto;height:48px}
.notify-ok{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:10px 16px;border:1px solid var(--blue-line);border-radius:6px;background:var(--blue-soft);font-size:15px;line-height:1.45;color:var(--blue-ink)}
.notify-ok .ic{width:16px;height:16px;stroke-width:2;flex:none}
.mailto{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-family:var(--mono);font-size:16px;color:var(--blue-ink)}
.mailto .ic{width:18px;height:18px}
.mailto:hover{color:var(--ink)}

/* case study */
.cs-g{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:72px;align-items:start}
.cs-main{display:flex;flex-direction:column;gap:40px}
.cs-side{position:sticky;top:100px}
.tk-wrap{display:flex;flex-direction:column;gap:14px}

/* contact · booking calendar placeholder (swap for the live Cal.com embed) */
.book{border:1px solid var(--line);border-radius:4px;background:var(--surface);overflow:hidden}
.book-h,.book-f{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:14px 24px}
.book-h{border-bottom:1px solid var(--line)}
.book-f{border-top:1px solid var(--line);background:var(--bg);font-family:var(--mono);font-size:11.5px;color:var(--ink-3)}
.book-f a{color:var(--blue-ink)}
.book-b{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,.85fr)}
.book-who{display:flex;flex-direction:column;gap:16px;align-items:flex-start;padding:28px 24px;border-right:1px solid var(--line)}
.book-who .mark{height:28px}
.bk-meta{display:flex;flex-direction:column;gap:8px;font-size:14px;color:var(--ink-2)}
.bk-meta span{display:flex;align-items:center;gap:10px}
.bk-meta .ic{width:16px;height:16px;color:var(--ink-3);flex:none}
.cal{padding:24px;border-right:1px solid var(--line)}
.cal-m{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:16px;font-weight:500;letter-spacing:-.01em}
.cal-nav{display:flex;gap:4px}
.cal-b{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:4px;color:var(--ink-2)}
.cal-b .ic{width:14px;height:14px}
.cal-b:hover{border-color:var(--line-2);color:var(--ink)}
.cal-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.cal-dw{padding:6px 0;text-align:center;font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.cal-d{height:44px;border:1px solid transparent;border-radius:4px;font-family:var(--mono);font-size:13px;color:var(--dim)}
.cal-d:disabled{cursor:default}
.cal-d.av{background:var(--blue-soft);font-weight:500;color:var(--blue-ink)}
.cal-d.av:hover{border-color:var(--blue-line)}
.cal-d.on{background:var(--blue);color:#fff}
.cal-d.blank{visibility:hidden}
.slots{display:flex;flex-direction:column;gap:8px;padding:24px}
.slots .label{margin-bottom:4px}
.slot{height:44px;border:1px solid var(--line-2);border-radius:4px;font-family:var(--mono);font-size:13px;color:var(--ink);transition:border-color .15s,background-color .15s}
.slot:hover{border-color:var(--ink-3)}
.slot.on{border-color:var(--blue);background:var(--blue-soft);color:var(--blue-ink)}
.slots .btn{width:100%;margin-top:8px}
.bk-ok{display:flex;flex-direction:column;gap:12px;align-items:flex-start}

/* coming soon + 404 */
.soon,.nf{padding:104px 0 120px}
.soon-g{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:72px;align-items:start}
.soon-l{display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.soon-l .lede{max-width:560px}
.soon-r{display:flex;flex-direction:column;gap:32px}
.meantime{display:flex;flex-direction:column;gap:12px;width:100%}

/* legal */
.legal{display:grid;grid-template-columns:240px minmax(0,1fr);gap:72px;align-items:start}
.toc{position:sticky;top:108px;display:flex;flex-direction:column;gap:12px}
.toc-l{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.toc-l a{display:flex;align-items:center;gap:10px;min-height:40px;border-bottom:1px solid var(--line);font-size:14px;color:var(--ink-2)}
.toc-l a .n{width:22px;font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.toc-l a:hover{color:var(--ink)}
.prose{display:flex;flex-direction:column;gap:48px;max-width:760px}
.prose section{display:flex;flex-direction:column;gap:14px;scroll-margin-top:96px}
.prose h2{display:flex;align-items:baseline;gap:14px;font-size:24px;font-weight:400;letter-spacing:-.02em;line-height:1.25}
.prose h2 .n{font-family:var(--mono);font-size:12px;letter-spacing:0;color:var(--ink-3)}
.prose p{font-size:16px;line-height:1.7;color:var(--ink-2)}
.prose a{color:var(--blue-ink);text-decoration:underline;text-underline-offset:3px}
.prose p.tbd{padding:14px 16px;border:1px dashed var(--line-2);border-radius:3px;font-family:var(--mono);font-size:12.5px;line-height:1.5;color:var(--ink-3)}

@media (max-width:1080px){
  .story,.founder,.pg-split,.cs-g,.fsplit,.soon-g,.legal{grid-template-columns:minmax(0,1fr);gap:48px}
  .story-l,.fsplit-l,.cs-side,.toc{position:static}
  .issues.c4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .duo{grid-template-columns:minmax(0,1fr)}
  .founder .ph{max-width:360px}
  .book-b{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .book-who{grid-column:1/-1;border-right:0;border-bottom:1px solid var(--line)}
}
@media (max-width:860px){
  .pg-row{grid-template-columns:minmax(0,1fr);gap:28px}
  .pg-meta{align-items:flex-start}
  .facts{grid-template-columns:minmax(0,1fr);margin-top:48px}
  .facts>div{padding:16px 0;border-bottom:1px solid var(--line)}
  .pulse-rep .rep-b{min-height:0}
}
@media (max-width:600px){
  .pg-hero{padding:52px 0 72px}
  .soon,.nf{padding:52px 0 80px}
  .issues.c4,.issues.c2{grid-template-columns:minmax(0,1fr)}
  .story-r p{font-size:17px}
  .kv>div{grid-template-columns:minmax(0,1fr);gap:4px}
  .panel{padding:28px 20px}
  .fm,.fm-ok{padding:24px 20px}
  .fm-g{grid-template-columns:minmax(0,1fr)}
  .notify-row{flex-direction:column}
  .notify-row .btn{width:100%}
  .rec-r{grid-template-columns:92px minmax(0,1fr);padding:11px 16px}
  .rec-h,.rec-f{padding-left:16px;padding-right:16px}
  .fnd{grid-template-columns:minmax(0,1fr);gap:8px;padding:12px 16px}
  .notice{grid-template-columns:24px minmax(0,1fr);padding:18px 16px}
  .notice .tlink{grid-column:2}
  .pulse-rep .pd{padding:20px}
  .book-b{grid-template-columns:minmax(0,1fr)}
  .cal{border-right:0;border-bottom:1px solid var(--line);padding:20px 16px}
  .book-who,.slots{padding:20px 16px}
  .book-h,.book-f{padding-left:16px;padding-right:16px}
  .tk>div{grid-template-columns:40px minmax(0,1fr)}
  .legal{gap:32px}
}

/* ============ Seiba Pulse product page (Pulse.dc.html) · product UI mockups ============ */
.pu .sec{padding:96px 0}
.pu .shead{margin-bottom:44px}
.pu .pg-hero{padding:80px 0 88px}
.flowline{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}
.flowline b{font-weight:500;color:var(--blue-ink)}

/* status chips: told apart by word and weight, not hue alone */
.sc{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:999px;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
.sc::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.sc-ok{background:var(--blue-soft);color:var(--blue-ink)}
.sc-watch{border:1px solid var(--line-2);color:var(--ink-2)}
.sc-watch::before{width:4px;height:4px;background:transparent;border:1.5px solid currentColor}
.sc-att{background:var(--amber-soft);color:var(--amber)}
.sc-crit{background:var(--amber);color:#fff}
.dn{font-family:var(--mono);color:var(--amber)}
.up{font-family:var(--mono);color:var(--blue-ink)}
.flat{font-family:var(--mono);color:var(--ink-3)}
.mb{position:relative;height:6px;border-radius:1px;background:var(--line);overflow:hidden}
.mb i{position:absolute;left:0;top:0;bottom:0;background:var(--blue)}
.mb.att i{background:var(--amber-dot)}
.mb.watch i{background:var(--ink-3)}

/* hero product snapshot */
.app{margin-top:56px;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:0 22px 48px -32px rgba(10,14,26,.28);overflow:hidden}
.app-h{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:12px 20px;border-bottom:1px solid var(--line);background:var(--bg)}
.app-h-l,.app-h-r{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap}
.live{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;color:var(--blue-ink)}
.live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}
.app-b{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr) minmax(0,1.15fr)}
.app-c{display:flex;flex-direction:column;gap:14px;padding:24px;min-width:0}
.app-c+.app-c{border-left:1px solid var(--line)}
.score{display:flex;align-items:baseline;gap:6px}
.score b{font-size:64px;font-weight:300;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums;color:var(--ink)}
.score span{font-family:var(--mono);font-size:14px;color:var(--ink-3)}
.spark{display:block;width:100%;height:44px}
.spark path{fill:none;stroke:var(--blue);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}
.spark path.a{fill:rgba(31,79,224,.07);stroke:none}
.kpis{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.kpis>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--ink-2)}
.kpis b{font-family:var(--mono);font-size:14px;font-weight:500;color:var(--ink)}
.kpis b.w{color:var(--amber)}
.prows{display:flex;flex-direction:column;gap:6px}
.prow{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 30px 14px;gap:12px;align-items:center;min-height:28px;font-size:13.5px;color:var(--ink-2)}
.prow .v{font-family:var(--mono);font-size:13px;font-weight:500;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.prow .t{font-size:12px;text-align:center}
.iss{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-top:1px solid var(--line)}
.iss p{font-size:14px;line-height:1.45;color:var(--ink)}
.iss .m{font-family:var(--mono);font-size:11px;color:var(--ink-3)}

/* what Pulse watches */
.watch{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.wc{display:flex;flex-direction:column;gap:10px;padding:24px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}
.wc>.ic{width:22px;height:22px;stroke-width:1.5;color:var(--blue)}
.wc h3{font-size:17px;font-weight:500;letter-spacing:-.01em;line-height:1.3}
.wc p{font-size:14px;line-height:1.5;color:var(--ink-2)}
.wc .sig{margin-top:auto;padding:8px 10px;border:1px solid var(--line);border-radius:3px;background:var(--bg);font-family:var(--mono);font-size:11.5px;line-height:1.55;color:var(--ink)}

/* seven pillars dashboard */
.dash{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);border:1px solid var(--line);border-radius:4px;background:var(--surface);overflow:hidden}
.dash-h{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:8px 16px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--line)}
.dash-l{display:flex;flex-direction:column;gap:2px;padding:8px;border-right:1px solid var(--line)}
.pi{display:grid!important;grid-template-columns:24px minmax(0,1fr) 34px auto;column-gap:12px;row-gap:8px;align-items:center;width:100%;padding:12px!important;border:1px solid transparent!important;border-radius:3px;text-align:left;transition:background-color .12s,border-color .12s}
.pi:hover{background:var(--bg)!important}
.pi.on{background:var(--blue-soft)!important;border-color:var(--blue-line)!important}
.pi .n{font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.pi .nm{font-size:14.5px;color:var(--ink)}
.pi .v{font-family:var(--mono);font-size:15px;font-weight:500;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.pi .mb{grid-column:2/4}
.pi .t{grid-column:4;font-size:11px;text-align:right}
.dash-r{display:flex;flex-direction:column;gap:20px;padding:28px;min-width:0}
.dr-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.dr-n{font-size:26px;font-weight:400;letter-spacing:-.025em;line-height:1.2}
.dr-q{margin-top:4px!important;font-size:15px;color:var(--ink-2)}
.dr-score{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.dr-score b{font-size:56px;font-weight:300;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.dr-score .d{font-size:13px}
.stats4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats4>div{display:flex;flex-direction:column;gap:4px;padding:14px 12px 14px 0;min-width:0}
.stats4>div+div{padding-left:14px;border-left:1px solid var(--line)}
.stats4 b{font-size:24px;font-weight:400;letter-spacing:-.02em;line-height:1.1;font-variant-numeric:tabular-nums;color:var(--ink)}
.stats4 span{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.fl{display:flex;flex-direction:column}
.fl>div{display:grid;grid-template-columns:136px minmax(0,1fr);gap:12px;align-items:start;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.45;color:var(--ink)}
.fl .sc{justify-self:start;margin-top:-1px}
.fl .src{display:block;margin-top:2px;font-family:var(--mono);font-size:11px;color:var(--ink-3)}

/* incidents */
.incs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.inc{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:4px;background:var(--surface);overflow:hidden}
.inc.crit{border-color:rgba(163,73,5,.4)}
.inc-h{display:flex;justify-content:space-between;align-items:center;gap:8px 12px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--line)}
.inc-h-l{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.inc-b{display:flex;flex-direction:column;gap:20px;padding:24px 20px}
.inc-t{font-size:21px;font-weight:500;letter-spacing:-.02em;line-height:1.25}
.big{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.big b{font-size:48px;font-weight:300;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums}
.big .d{font-size:13px}
.sigs{display:flex;flex-direction:column;gap:8px}
.sigs>div{display:flex;align-items:baseline;gap:10px;font-size:14px;line-height:1.45;color:var(--ink-2)}
.chain{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.chain span{display:inline-flex;align-items:center;height:28px;padding:0 10px;border:1px solid var(--line-2);border-radius:3px;background:var(--bg);font-family:var(--mono);font-size:11.5px;color:var(--ink)}
.chain i{font-style:normal;font-family:var(--mono);font-size:12px;color:var(--ink-3)}
.inc-f{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:4px 20px;border-top:1px solid var(--line);background:var(--bg)}
.ticks{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:3px;height:26px}
.ticks i{display:block;border-radius:1px;background:var(--blue)}
.ticks i.x{background:var(--amber-soft);border:1px dashed var(--amber-dot)}
.ticks-l{display:flex;justify-content:space-between;gap:8px;margin-top:6px;font-family:var(--mono);font-size:10.5px;color:var(--ink-3)}
.alert-l{display:flex;align-items:center;gap:10px;margin-top:20px;font-family:var(--mono);font-size:11.5px;color:var(--ink-3)}
.alert-l .ic{width:16px;height:16px;color:var(--blue);flex:none}

/* blast radius */
.blast{border:1px solid var(--line);border-radius:4px;background:var(--surface);overflow:hidden}
.blast .stats4{border-top:0;padding:0 20px}
.graph{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);align-items:center;padding:28px 20px;background-color:var(--bg);background-image:radial-gradient(circle at 1px 1px,rgba(10,14,26,.08) 1px,transparent 0);background-size:16px 16px}
.gcol{display:flex;flex-direction:column;gap:10px;min-width:0}
.gcol>.label{margin-bottom:2px}
.gn{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid var(--line-2);border-radius:3px;background:var(--surface);min-width:0}
.gn b{overflow:hidden;font-family:var(--mono);font-size:12px;font-weight:500;color:var(--ink);white-space:nowrap;text-overflow:ellipsis}
.gn span{font-family:var(--mono);font-size:10.5px;color:var(--ink-3)}
.gn.src{border-color:var(--amber-dot);background:var(--amber-soft)}
.gn.src b,.gn.src span{color:var(--amber)}
.gn.hit{border-color:rgba(224,122,31,.6)}
.gar{position:relative;height:1px;background:var(--line-2)}
.gar::after{content:"";position:absolute;right:0;top:-3px;border:3.5px solid transparent;border-left:5px solid var(--line-2);border-right:0}

/* health over time */
.hist{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,3fr);border:1px solid var(--line);border-radius:4px;background:var(--surface);overflow:hidden}
.hist-c{display:flex;flex-direction:column;gap:12px;padding:20px 20px 12px;min-width:0}
.hist-c svg{display:block;width:100%;height:auto;overflow:visible}
.ch-g{stroke:var(--line);stroke-width:1}
.ch-t{font-family:var(--mono);font-size:11px;fill:var(--ink-3)}
.ch-a{fill:rgba(31,79,224,.06)}
.ch-l{fill:none;stroke:var(--blue);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.ch-e{stroke:var(--line-2);stroke-width:1;stroke-dasharray:3 3}
.ch-m{fill:var(--surface);stroke:var(--amber);stroke-width:2}
.ch-m.ok{stroke:var(--blue)}
.ch-n{font-family:var(--mono);font-size:11px;font-weight:500;fill:var(--amber);text-anchor:middle}
.ch-n.ok{fill:var(--blue-ink)}
.ch-now{fill:var(--blue);stroke:var(--surface);stroke-width:2}
.hist-r{display:flex;flex-direction:column;border-left:1px solid var(--line)}
.hist-s{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:1px solid var(--line)}
.hist-s>div{display:flex;flex-direction:column;gap:4px;padding:18px 20px}
.hist-s>div+div{border-left:1px solid var(--line)}
.hist-s b{font-size:36px;font-weight:300;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.hist-s span{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.hist-d{padding:12px 20px;border-bottom:1px solid var(--line);font-size:13px}
.evl{display:flex;flex-direction:column;gap:12px;padding:18px 20px}
.evl>div{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13.5px;line-height:1.4;color:var(--ink-2)}
.evn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--amber);font-family:var(--mono);font-size:10px;font-weight:500;color:#fff}
.evn.ok{background:var(--blue)}
.evl .dt{font-family:var(--mono);font-size:11px;color:var(--ink-3)}

/* tags: standards and sources */
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{display:inline-flex;align-items:center;height:24px;padding:0 8px;border:1px solid var(--line-2);border-radius:3px;background:var(--surface);font-family:var(--mono);font-size:11px;color:var(--ink-2)}

/* pulse vs diagnosis */
.ck{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px;width:100%;border-top:1px solid var(--line)}
.ck>div{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px;color:var(--ink-2)}
.ck .ic{width:15px;height:15px;flex:none;color:var(--blue)}
.panel .tagline{font-size:19px;line-height:1.35;letter-spacing:-.015em;color:var(--ink)}
.panel.pu-main{border-color:var(--blue-line)}

/* standards and sources, shown inside the watch cards and the pillar panel */
.wc .tags{gap:4px}
.wc .tag{height:22px;padding:0 7px;font-size:10.5px;background:var(--bg)}
.chk{display:flex;flex-direction:column;gap:8px}
/* architecture: small icon beside the agent label, never stretched */
.agent-h{display:flex;align-items:center;gap:10px}
.sx-rt .agent-h .mark{height:22px;width:auto}
.sx-pt>.ic{align-self:flex-start}

@media (max-width:1080px){
  .app-b{grid-template-columns:minmax(0,1fr)}
  .app-c+.app-c{border-left:0;border-top:1px solid var(--line)}
  .watch{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dash{grid-template-columns:minmax(0,1fr)}
  .dash-l{border-right:0;border-bottom:1px solid var(--line)}
  .incs{grid-template-columns:minmax(0,1fr)}
  .hist{grid-template-columns:minmax(0,1fr)}
  .hist-r{border-left:0;border-top:1px solid var(--line)}
}
@media (max-width:860px){
  .graph{grid-template-columns:minmax(0,1fr);row-gap:0}
  .gar{justify-self:center;width:1px;height:24px}
  .gar::after{right:-3px;top:auto;bottom:0;border:3.5px solid transparent;border-top:5px solid var(--line-2);border-bottom:0}
}
@media (max-width:600px){
  .pu .sec{padding:72px 0}
  .pu .pg-hero{padding:52px 0 64px}
  .app{margin-top:40px}
  .app-c,.dash-r{padding:20px 16px}
  .app-h,.dash-h,.inc-h{padding-left:16px;padding-right:16px}
  .score b{font-size:56px}
  .watch{grid-template-columns:minmax(0,1fr)}
  .stats4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats4>div,.stats4>div+div{padding:12px 12px 12px 0;border-left:0;border-bottom:1px solid var(--line)}
  .blast .stats4{padding:0 16px}
  .fl>div{grid-template-columns:minmax(0,1fr);gap:6px}
  .inc-b{padding:20px 16px}
  .inc-f{padding:4px 16px}
  .ticks{gap:2px}
  .graph{padding:20px 16px}
  .hist-c{padding:16px 12px 8px}
  .ck{grid-template-columns:minmax(0,1fr)}
}

/* ============ Patient Truth waitlist page (PatientTruth.dc.html) · a short product introduction ============ */
/* one screen: the headline, a quiet early-access capture, and one patient's history drawn as a single real line */
.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ptw-big{font-size:clamp(38px,5vw,68px);font-weight:300;letter-spacing:-.04em;line-height:1.04;text-wrap:balance;color:var(--ink)}
.ptw-big .dim{color:var(--dim)}
.ptw-hero{padding:104px 0 128px}
.ptw-top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:80px;align-items:end}
.ptw-hl{display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.ptw-act{display:flex;flex-direction:column;gap:32px;align-items:flex-start;min-width:0}
.ptw-act .lede{max-width:460px}
/* the picture: one patient's blood sugar over ten years as one line; the dashed piece is the clinic move where the patient ID changed */
.ptw-pic{margin:136px 0 0}
.ptw-cap-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px 16px;flex-wrap:wrap}
.ptw-whole{color:var(--blue-ink)}
.ptw-curve{position:relative;height:320px;margin:32px 0 96px}
.ptw-curve svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;animation:ptw-draw 2.4s cubic-bezier(.4,0,.2,1) both}
.ptw-ln{fill:none;stroke:var(--blue);stroke-width:1.75;stroke-linecap:round;vector-effect:non-scaling-stroke}
.ptw-ln.gap{stroke-dasharray:3 5}
.ptw-pt{position:absolute;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px var(--bg);animation:ptw-in .5s ease-out both}
.ptw-pt.now{width:13px;height:13px;margin:-6.5px 0 0 -6.5px;background:var(--surface);border:2px solid var(--blue)}
.ptw-pt.now::after{content:"";position:absolute;inset:-9px;border:1px dashed var(--ink-3);border-radius:50%}
.ptw-ev{position:absolute;display:flex;flex-direction:column;gap:3px;width:200px;animation:ptw-in .6s ease-out both}
.ptw-ev .d,.ptw-evs .d{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}
.ptw-ev b{font-size:15.5px;font-weight:400;letter-spacing:-.01em;line-height:1.35;color:var(--ink);text-wrap:balance}
.ptw-ev .s,.ptw-evs .s{font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.ptw-ev.c{align-items:center;text-align:center}
.ptw-ev.r{align-items:flex-end;text-align:right}
.ptw-ev.up.c{transform:translate(-50%,calc(-100% - 18px))}
.ptw-ev.dn.l{transform:translate(-8px,18px)}
.ptw-ev.dn.c{transform:translate(-50%,18px)}
.ptw-ev.dn.r{transform:translate(calc(-100% + 8px),24px)}
.ptw-tag{display:inline-flex;align-items:center;height:22px;margin-top:6px;padding:0 8px;border:1px dashed var(--line-2);border-radius:999px;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}
.ptw-evs{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;list-style:none}
.ptw-pay{max-width:900px;font-size:clamp(22px,2.4vw,32px);font-weight:300;letter-spacing:-.025em;line-height:1.3;color:var(--ink);text-wrap:balance}
.ptw-pay .dim{color:var(--dim)}
/* early access: no card. The form is one open question and one line for an email, written large, on hairlines */
.ptw-join{padding:136px 0;border-top:1px solid var(--line);background:var(--surface)}
.ptw-join-g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:112px;align-items:start}
.ptw-join-l{display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.ptw-join-l .body{max-width:440px}
.ptw-gets{display:flex;flex-direction:column;gap:26px;margin-top:16px}
.ptw-gets>div{position:relative;display:flex;flex-direction:column;gap:4px;padding-left:24px}
.ptw-gets>div::before{content:"";position:absolute;left:0;top:8px;width:9px;height:9px;border-radius:50%;background:var(--blue)}
.ptw-gets b{font-size:17px;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.ptw-gets span{font-size:15.5px;line-height:1.55;color:var(--ink-2)}
/* the record: the visitor's question is typeset live as the next entry on the patient's line, then added on submit */
.ptw-rec{display:flex;flex-direction:column;gap:30px;margin-bottom:48px}
.ptw-re{position:relative;display:flex;flex-direction:column;gap:6px;padding-left:34px}
.ptw-re>i{position:absolute;left:0;top:3px;width:12px;height:12px;border-radius:50%}
.ptw-re.past>i{background:var(--blue)}
.ptw-re.past::after{content:"";position:absolute;left:5px;top:22px;bottom:-26px;border-left:1.5px dashed var(--blue-line)}
.ptw-re.now>i{background:var(--surface);border:1.5px dashed var(--blue)}
.ptw-rec.done .ptw-re.past::after{border-left:1.5px solid var(--blue)}
.ptw-rec.done .ptw-re.now>i{background:var(--blue);border:1.5px solid var(--blue);box-shadow:0 0 0 5px var(--blue-soft)}
.ptw-re .d{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}
.ptw-rec.done .ptw-re.now .d{color:var(--blue-ink)}
.ptw-re b{font-size:15px;font-weight:400;color:var(--ink-2)}
.ptw-re .s{font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.ptw-qv{font-size:clamp(20px,1.9vw,24px);font-weight:300;letter-spacing:-.02em;line-height:1.35;color:var(--ink);text-wrap:pretty;overflow-wrap:anywhere}
.ptw-qv{min-height:1.35em}
.ptw-qv.empty{color:var(--dim)}
.ptw-caret{display:inline-block;width:1.5px;height:1.05em;margin-left:3px;vertical-align:-.15em;background:var(--blue);animation:ptw-blink 1.1s steps(1) infinite}
.ptw-rec.done .ptw-caret{display:none}
@keyframes ptw-blink{50%{opacity:0}}
@media (prefers-reduced-motion:reduce){.ptw-caret{animation:none}}
/* the form itself: small labels, hairline inputs */
.ptw-ask{display:flex;flex-direction:column;align-items:stretch;padding-left:34px}
.ptw-q{display:block;font-size:16px;font-weight:500;letter-spacing:-.01em;line-height:1.45;color:var(--ink)}
.ptw-opt{display:inline-flex;align-items:center;height:20px;margin-left:8px;padding:0 7px;border:1px solid var(--line-2);border-radius:999px;font-family:var(--mono);font-size:9.5px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);vertical-align:middle;transform:translateY(-1px)}
.ptw-help{margin-top:8px;font-size:13px;line-height:1.5;color:var(--ink-3)}
.ptw-in{display:block;width:100%;min-width:0;height:46px;padding:0 2px;border:0;border-bottom:1px solid var(--line-2);border-radius:0;background:transparent;font:inherit;font-size:16px;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.ptw-in::placeholder{color:var(--ink-3);opacity:1}
.ptw-in:hover{border-bottom-color:var(--ink-3)}
.ptw-in:focus{outline:0;border-bottom-color:var(--blue);box-shadow:0 1px 0 0 var(--blue)}
.ptw-q.sm{margin-top:36px}
.ptw-send{display:flex;align-items:flex-end;gap:20px}
.ptw-send .ptw-in{flex:1 1 auto;width:auto}
.ptw-note{margin-top:14px;font-size:12.5px;line-height:1.5;color:var(--ink-3)}
.ptw-note a{color:var(--blue-ink);text-decoration:underline;text-underline-offset:2px}
.ptw-done{display:flex;flex-direction:column;gap:14px;align-items:flex-start;padding-left:34px}
.ptw-done .ptw-q{font-size:20px;font-weight:400}
.ptw-done .body{max-width:460px}
@keyframes ptw-draw{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes ptw-in{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.ptw-curve svg,.ptw-pt,.ptw-ev{animation:none}}
.ptw-why .shead{margin-bottom:80px}
.ptw-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}
.ptw-three>div{display:flex;flex-direction:column;gap:14px;padding-top:24px;border-top:1px solid var(--ink)}
.ptw-three h3{margin-top:8px;font-size:clamp(30px,3vw,40px);font-weight:300;letter-spacing:-.03em;line-height:1.1;color:var(--ink)}
.ptw-three p{max-width:320px;font-size:16px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.ptw-cta .cta-r{align-items:flex-start;gap:20px}
.ptw-cta-s{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--night-muted)}
@media (max-width:1080px){
  .ptw-top{grid-template-columns:minmax(0,1fr);gap:36px}
  .ptw-join-g{grid-template-columns:minmax(0,1fr);gap:64px}
  .ptw-three{gap:32px}
}
@media (max-width:860px){
  .ptw-pic{margin-top:72px}
  .ptw-curve{height:180px;margin:20px 0 32px}
  .ptw-join{padding:88px 0}
  .ptw-ev{display:none}
  .ptw-evs{position:static;width:auto;height:auto;margin:0 0 40px;overflow:visible;clip:auto;white-space:normal;display:flex;flex-direction:column;border-top:1px solid var(--line)}
  .ptw-evs li{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.45;color:var(--ink)}
  .ptw-evs .d{padding-top:2px}
  .ptw-evs .s{display:block;margin-top:2px}
  .ptw-three{grid-template-columns:minmax(0,1fr);gap:40px}
  .ptw-why .shead{margin-bottom:48px}
}
@media (max-width:600px){
  .ptw-hero{padding:56px 0 80px}
  .ptw-send{flex-direction:column;align-items:stretch;gap:16px}
  .ptw-send .ptw-in{width:100%}
  .ptw-send .btn{width:100%}
  .ptw-q.sm{margin-top:44px}
  .ptw-opt{display:flex;width:max-content;margin:10px 0 0;transform:none}
}

/* ============ Open source page (OpenSource.dc.html) · Seiba Risk Scanner introduction ============ */
/* open type on hairlines; the hero picture is a placeholder for a real report screenshot */
.oss-blue{color:var(--blue-ink)}
.oss-hero{padding:104px 0 128px}
.oss-top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:80px;align-items:end}
.oss-hl{display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.oss-act{display:flex;flex-direction:column;gap:32px;align-items:flex-start;min-width:0}
.oss-act .lede{max-width:460px}
.oss-pic{display:flex;flex-direction:column;gap:24px;margin:112px 0 0}
.oss-cap-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px 16px;flex-wrap:wrap}
.oss-ph{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;aspect-ratio:2/1;padding:24px;border:1px dashed var(--line-2);border-radius:4px;background-color:var(--surface);background-image:radial-gradient(circle at 1px 1px,rgba(10,14,26,.08) 1px,transparent 0);background-size:16px 16px;text-align:center}
.oss-pay{max-width:900px;margin-top:16px;font-size:clamp(22px,2.4vw,32px);font-weight:300;letter-spacing:-.025em;line-height:1.3;color:var(--ink);text-wrap:balance}
.oss-pay .dim{color:var(--dim)}
/* beyond detection: the questions teams still have to answer */
.oss-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:96px;align-items:start}
.oss-split-l{position:sticky;top:108px;display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.oss-split-l .body{max-width:420px}
.oss-fit{max-width:420px;padding-top:20px;border-top:1px solid var(--line);font-size:15.5px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.oss-fit b{font-weight:500;color:var(--ink)}
.oss-qs{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.oss-qs li{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line);font-size:clamp(19px,1.8vw,23px);font-weight:300;letter-spacing:-.02em;line-height:1.35;color:var(--ink);text-wrap:pretty}
.oss-qs .n{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.09em;color:var(--ink-3)}
/* workflow: six numbered steps as type, no boxes or arrows */
.oss-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:72px 48px}
.oss-steps>div{display:flex;flex-direction:column;gap:12px;padding-top:24px;border-top:1px solid var(--ink)}
.oss-steps h3{margin-top:6px;font-size:clamp(26px,2.4vw,32px);font-weight:300;letter-spacing:-.03em;line-height:1.1;color:var(--ink)}
.oss-steps p{max-width:340px;font-size:16px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.oss-src{font-family:var(--mono);font-size:11.5px;line-height:1.6;color:var(--ink-3);text-wrap:pretty}
/* toolkit: a two-column hairline list */
.oss-caps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:72px;border-top:1px solid var(--line)}
.oss-caps>div{display:flex;flex-direction:column;gap:10px;padding:32px 0;border-bottom:1px solid var(--line)}
.oss-caps h3{font-size:20px;font-weight:500;letter-spacing:-.015em;line-height:1.3;color:var(--ink)}
.oss-caps p{max-width:460px;font-size:15.5px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}
/* where it sits in Seiba: one pillar of seven, released as open source */
.oss-pillar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;margin-top:96px}
.oss-pillar-l{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.oss-seven{display:flex;gap:8px}
.oss-seven i{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--line-2)}
.oss-seven i.on{background:var(--blue);border-color:var(--blue)}
.oss-pillar p{max-width:760px;font-size:clamp(20px,2vw,26px);font-weight:300;letter-spacing:-.02em;line-height:1.35;color:var(--ink);text-wrap:pretty}
.oss-pillar .dim{color:var(--dim)}
/* resources, inside the dark band */
.oss-cta .cta-r{gap:28px}
.oss-res{display:flex;flex-direction:column;border-top:1px solid var(--night-line)}
.oss-res a,.oss-res>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;min-height:64px;padding:12px 0;border-bottom:1px solid var(--night-line)}
.oss-res .k{display:flex;flex-direction:column;gap:3px;min-width:0}
.oss-res b{font-size:16px;font-weight:500;letter-spacing:-.01em;color:#fff}
.oss-res>div b{font-weight:400;color:var(--night-text)}
.oss-res .u{font-family:var(--mono);font-size:11.5px;color:var(--night-muted);overflow-wrap:anywhere}
.oss-res .ic{width:16px;height:16px;color:var(--night-muted);transition:transform .15s,color .15s}
.oss-res a:hover .ic{color:#fff;transform:translate(2px,-2px)}
.oss-soon{display:inline-flex;align-items:center;height:22px;padding:0 8px;border:1px solid var(--night-line);border-radius:999px;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--night-muted);white-space:nowrap}
@media (max-width:1080px){
  .oss-top{grid-template-columns:minmax(0,1fr);gap:36px}
  .oss-split{grid-template-columns:minmax(0,1fr);gap:48px}
  .oss-split-l{position:static}
  .oss-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .oss-pic{margin-top:72px}
  .oss-steps{grid-template-columns:minmax(0,1fr);gap:40px}
  .oss-caps{grid-template-columns:minmax(0,1fr)}
  .oss-pillar{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:64px}
}
@media (max-width:600px){
  .oss-hero{padding:56px 0 80px}
  .oss-ph{aspect-ratio:4/3}
  .oss-qs li{grid-template-columns:36px minmax(0,1fr);padding:18px 0}
  .oss-caps>div{padding:26px 0}
}

/* ============ Blog page (Blog.dc.html) · a plain index of posts on hairlines ============ */
.blg-hero{padding:104px 0 80px}
.blg-hd{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:80px;align-items:end}
.blg-hl{display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.blg-hd .lede{max-width:460px}
.blg-sec{padding:0 0 136px}
.blg-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.blg-list li{border-bottom:1px solid var(--line)}
.blg-row{display:grid;grid-template-columns:160px minmax(0,1fr) 180px;grid-template-areas:"d t m";gap:48px;align-items:baseline;padding:44px 0}
.blg-d{grid-area:d;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3)}
.blg-t{grid-area:t;display:flex;flex-direction:column;gap:12px;align-items:flex-start;min-width:0}
.blg-t h2{font-size:clamp(24px,2.4vw,32px);font-weight:300;letter-spacing:-.03em;line-height:1.15;color:var(--ink);text-wrap:balance;transition:color .15s}
.blg-t p{max-width:620px;font-size:16px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}
.blg-go{display:inline-flex;align-items:center;gap:8px;min-height:32px;font-size:15px;font-weight:500;color:var(--blue-ink)}
.blg-go .ic{width:16px;height:16px;transition:transform .15s}
.blg-m{grid-area:m;display:flex;flex-direction:column;gap:6px;align-items:flex-end;text-align:right}
.blg-m .label{color:var(--ink-2)}
.blg-row:hover h2{color:var(--blue-ink)}
.blg-row:hover .blg-go .ic{transform:translateX(3px)}
.blg-more{margin-top:40px;font-size:15px;line-height:1.6;color:var(--ink-2)}
.blg-more a{color:var(--blue-ink)}
.blg-more a:hover{color:var(--ink)}
@media (max-width:860px){
  .blg-hd{grid-template-columns:minmax(0,1fr);gap:28px}
  .blg-row{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"d m" "t t";gap:14px 16px;padding:32px 0}
  .blg-m{flex-direction:row;justify-content:flex-end;align-items:baseline;gap:12px}
}
@media (max-width:600px){
  .blg-hero{padding:56px 0 48px}
  .blg-sec{padding-bottom:88px}
}
