/* Home polish: calm spacing, refined type, soft surfaces, one teal accent. Loads last on the home page. */
body[data-page=home]{--soft-shadow:0 1px 2px #0b42470a,0 18px 48px -28px #0b424733;--hair:#d9e9e5;--calm:cubic-bezier(.22,1,.36,1)}

/* Type scale */
body[data-page=home] main .section h2,body[data-page=home] .partner-live h2{font-size:clamp(2.05rem,1.35rem + 2.5vw,3.5rem);line-height:1.04;letter-spacing:-.045em;font-weight:400;color:#0b4247}
body[data-page=home] main .label{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#006e69}
body[data-page=home] .sec-head{margin-bottom:clamp(40px,5vw,72px);gap:24px}
body[data-page=home] .sec-head .label{margin-bottom:18px}
body[data-page=home] .sec-head p{font-size:17px;line-height:1.65;color:#23585b;max-width:40ch}
body[data-page=home] main .section .lede{font-size:18px;line-height:1.6;max-width:36ch}

/* Hero proof row now holds three figures */
.hero-proof.lab-proof{grid-template-columns:repeat(3,minmax(0,1fr))}

/* Rhythm */
body[data-page=home] main .section{padding:clamp(88px,10vw,148px) 0}
body[data-page=home] .on-ink{background:#eef7f4;border:0}

/* Buttons and pills */
body[data-page=home] main .btn{min-height:46px;padding:0 24px;display:inline-flex;align-items:center;gap:8px;font-size:14px;letter-spacing:.005em;transition:background-color .35s var(--calm),border-color .35s var(--calm),color .35s var(--calm)}
body[data-page=home] main .btn-ghost{border-color:#c3dcd6;background:transparent}
body[data-page=home] main .btn-ghost:hover{border-color:#0b5155;background:#fff}
.pill{display:inline-flex;align-items:center;gap:7px;padding:5px 11px 5px 10px;border-radius:999px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;line-height:1;white-space:nowrap;color:#386266;background:#eef3f2}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;border:1px solid currentColor;box-sizing:border-box}
.pill[data-state=live]{color:#006e69;background:#e2f4ee}
.pill[data-state=live]::before{background:currentColor}

/* Built with band */
.built-band{padding:clamp(56px,6vw,88px) 0 clamp(48px,5vw,72px);border-top:1px solid var(--hair)}
.built-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:36px}
.built-more{font-size:13px;color:#0b5155;text-decoration:none;border-bottom:1px solid #c3dcd6;padding-bottom:2px;transition:border-color .35s var(--calm)}
.built-more:hover{border-color:#0b5155}
.built-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,4vw,64px)}
.built-list li{min-width:0}
.built-name{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.built-name a,.built-name strong{font-family:var(--font-display);font-size:clamp(1.3rem,1.1rem + .6vw,1.65rem);font-weight:400;letter-spacing:-.03em;color:#0b4247;text-decoration:none}
.built-name a{background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .5s var(--calm)}
.built-name a:hover{background-size:100% 1px}
.built-list p{margin:0 0 14px;font-size:15px;line-height:1.6;color:#23585b;max-width:30ch}
.built-list .partner-state{display:block;font-family:var(--font-mono);font-size:11px;line-height:1.7;color:#386266}
.built-list .partner-state[data-state=ready],.built-list .partner-state[data-state=live],.built-list .partner-state[data-state=stored]{color:#006e69}

/* Ticker: quieter */
body[data-page=home] .ticker{background:transparent;border-color:var(--hair)}
body[data-page=home] .ticker-tag{background:transparent}

/* Method columns */
body[data-page=home] .parser-columns{gap:clamp(32px,4.5vw,72px);margin-top:0}
body[data-page=home] .parser-columns article{border-top:1px solid var(--hair);padding-top:32px}
body[data-page=home] .parser-columns h3{font-size:clamp(1.35rem,1.15rem + .6vw,1.7rem);letter-spacing:-.03em;margin:18px 0 14px}
body[data-page=home] .parser-columns p{font-size:15.5px;line-height:1.7;max-width:34ch}

/* Partner layer */
body[data-page=home] .partner-live{padding:clamp(88px,10vw,148px) 0 clamp(40px,4vw,64px);border-top:1px solid var(--hair)}
body[data-page=home] .partner-live-head{margin-bottom:clamp(36px,4vw,56px);align-items:end}
body[data-page=home] .partner-live-head .label{display:block;margin-bottom:18px}
body[data-page=home] .partner-result{border:0;border-radius:24px;background:#fff;box-shadow:var(--soft-shadow);padding:clamp(24px,3.2vw,44px);display:grid;gap:4px}
body[data-page=home] .partner-result p{margin:6px 0;max-width:72ch}
body[data-page=home] .partner-result .btn{justify-self:start;margin-top:16px}
body[data-page=home] .partner-private{border-color:var(--hair);margin-top:22px}
body[data-page=home] .partner-live>.partner-time{margin-top:24px}

/* Surfaces: fewer borders, soft depth */
body[data-page=home] main .panel,body[data-page=home] main .sec-viz,body[data-page=home] main .lab-path,body[data-page=home] main .receipts,body[data-page=home] main .cmd{border-color:transparent;border-radius:20px;box-shadow:var(--soft-shadow)}
body[data-page=home] main .sec-viz .sec-viz,body[data-page=home] main .panel .panel{box-shadow:none}
body[data-page=home] main .panel-head{background:transparent;border-color:var(--hair)}
body[data-page=home] .compare th,body[data-page=home] .compare td{border-color:#d3e6e1}
body[data-page=home] .kpi{border-color:var(--hair)}

/* Scroll motion: fade and lift, no overshoot */
body[data-page=home] .reveal{opacity:0;transform:translateY(28px);transition:opacity 1.1s var(--calm),transform 1.1s var(--calm)}
body[data-page=home] .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){body[data-page=home] .reveal{opacity:1;transform:none;transition:none}}

@media(max-width:899px){
  .built-list{grid-template-columns:1fr;gap:0}
  .built-list li{padding:26px 0;border-top:1px solid var(--hair)}
  .built-list li:first-child{border-top:0;padding-top:0}
  .built-list p{max-width:none}
  body[data-page=home] .sec-head p{font-size:16px}
}
@media(max-width:599px){
  .built-head{margin-bottom:24px}
  body[data-page=home] main .section{padding:72px 0}
  body[data-page=home] .partner-live{padding-top:72px}
  body[data-page=home] .partner-result{border-radius:18px}
}
