/* Savia home redesign. Everything is scoped under .home-page; tokens come from savia.css :root. */

/* ---- 12px floor: lift every small mono label that appears on the home page ---- */
.home-page .eyebrow{font-size:12px;letter-spacing:.1em}
.home-page .trace-top,.home-page .trace-footer{font-size:12px;letter-spacing:.04em;height:auto;min-height:46px;gap:12px;flex-wrap:wrap;padding:10px 18px}
.home-page .trace-heading small{font:400 12px/1.4 var(--body);letter-spacing:0}
.home-page .bench-item-top{font-size:12px;letter-spacing:.04em;flex-wrap:wrap}
.home-page .bench-options span{font-size:12px}
.home-page .bench-prov dt{font-size:12px;letter-spacing:.04em}
.home-page .bench-prov code{font-size:12px}
.home-page .prov-derived,.home-page .prov-inferred{font-size:12px;letter-spacing:.04em}
.home-page .bench-prov>div{grid-template-columns:96px 1fr}
.home-page .evidence-top,.home-page .evidence-foot,.home-page .evidence-meaning span{font-size:12px;letter-spacing:.05em}
.home-page .evidence-meaning small{font-size:12px}
.home-page .evidence-row span{font-size:14px}
.home-page .process-number{font-size:13px}
.home-page .process-copy small{font:500 12px/1.5 var(--body);letter-spacing:.02em;text-transform:none}
.home-page .process-copy p{font-size:16px}
.home-page .state-list span{font-size:15px;line-height:1.55}
.home-page .state-list strong{font-size:16px}
.home-page .manifesto-line{font-size:13px}

/* ---- Hero: experts first ---- */
.home-page .hero-home{min-height:0;padding:88px 0 0}
.home-page .hero-grid{gap:clamp(32px,5vw,72px);align-items:start}
.home-page .hero-copy h1{font-size:clamp(40px,5.2vw,76px);line-height:1.02;margin:18px 0 24px;max-width:15ch}
.home-page .hero-copy>p.hero-lede{font-size:clamp(17px,1.5vw,20px);line-height:1.6;color:rgba(250,248,244,.8);max-width:36em;margin:0 0 34px}
.home-page .hero-actions{gap:14px 22px;align-items:center}
.home-page .hero-primary{min-height:60px;padding:18px 28px;font-size:17px;gap:28px}
.home-page .hero-apply-note{font-size:14px;color:rgba(250,248,244,.7)}
.home-page .hero-copy>p.hero-buyer{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:30px 0 0;padding:16px 0 0;border-top:1px solid var(--line-dark);font-size:15px;line-height:1.5;color:rgba(250,248,244,.78);max-width:36em}
.home-page .hero-buyer a{color:var(--green);font-weight:600;border-bottom:1px solid currentColor;padding:4px 0}
.home-page .hero-buyer a:hover,.home-page .hero-buyer a:focus-visible{color:var(--sage)}
.home-page .hero-copy>.everyone-line,.home-page .everyone-line{font-size:15px;color:rgba(250,248,244,.7);margin-top:22px}
.home-page .trace-demo,.home-page .trace-demo.reveal.visible,.home-page .trace-demo.reveal{transform:none;box-shadow:0 16px 48px rgba(0,0,0,.28)}
.home-page .trace-demo{min-width:0}
.home-page .bench-prompt{font-size:18px}

/* Proof bar */
.home-page .proof-bar{margin-top:64px;padding:22px 0;gap:14px 36px;flex-wrap:wrap;min-height:0}
.home-page .proof-bar>span{font-size:15px;line-height:1.4;color:rgba(250,248,244,.86);gap:12px}
.home-page .proof-bar i{width:7px;height:7px;flex:none}
.home-page .proof-bar .proof-region{font:500 12px var(--mono);letter-spacing:.08em;color:var(--green)}

/* ---- How it works strip ---- */
.how-strip{background:var(--paper);padding:96px 0 72px;border-bottom:1px solid var(--line)}
.how-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:clamp(32px,6vw,88px);align-items:start}
.how-head h2{font:500 clamp(28px,3vw,42px)/1.12 var(--display);letter-spacing:-.02em;margin:14px 0 0;text-wrap:balance}
.how-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;counter-reset:none}
.how-steps li{padding:22px 0 26px;border-top:1px solid var(--line);min-width:0}
.how-num{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--forest);color:var(--paper);font:600 14px var(--display)}
.how-steps h3{font:500 22px/1.2 var(--display);letter-spacing:-.015em;margin:14px 0 8px}
.how-steps p{margin:0;font-size:16px;line-height:1.6;color:var(--muted);max-width:34em}
.how-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 32px;margin-top:20px;padding-top:22px;border-top:1px solid var(--line)}
.how-foot p{margin:0;font-size:15px;color:var(--muted)}
.how-foot .text-link{color:var(--forest);font-weight:600;font-size:15px}

/* ---- Doors: two primary, two secondary ---- */
.home-page .doors-section{padding:88px 0 80px}
.home-page .doors-grid.doors-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-page .door-primary{min-height:0;padding:44px 40px 36px}
.home-page .door-primary h2{margin:0 0 16px;font-size:clamp(26px,2.6vw,36px)}
.home-page .door-primary p{font-size:17px;line-height:1.6;max-width:46ch}
.home-page .door-primary b{font-size:15px;padding-top:30px}
.home-page .door-primary:first-child{background:var(--ink);color:var(--paper)}
.home-page .door-primary:first-child p{color:rgba(250,248,244,.74)}
.home-page .door-primary:first-child b{color:var(--green)}
.home-page .door-primary:first-child:hover{background:var(--ink-2)}
.door-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:1px;background:var(--line);border:1px solid var(--line);border-top:0}
.door-link{display:flex;flex-direction:column;gap:6px;background:var(--white);padding:20px 40px;min-width:0;transition:.2s}
.door-link strong{font:500 17px/1.3 var(--display);letter-spacing:-.01em}
.door-link span{font-size:14px;font-weight:600;color:var(--forest)}
.door-link:hover{background:#f1f6f1}
.home-page .doors-secondary{font-size:14px;margin-top:28px}
.home-page .doors-secondary span{font:500 12px var(--mono);letter-spacing:.08em}

/* ---- Founder ---- */
.home-page .founder-section{padding:88px 0}
.home-page .founder-grid{grid-template-columns:96px minmax(0,1fr);gap:40px;align-items:start}
.home-page .founder-text{max-width:44em;padding-left:40px;border-left:1px solid var(--line)}
.home-page .founder-body{font-size:clamp(19px,1.8vw,24px);line-height:1.5;margin:16px 0 0}
.home-page .founder-sign{font:500 14px/1.5 var(--body);letter-spacing:0;color:var(--forest);margin:24px 0 0}

/* ---- Second expert call to action ---- */
.expert-cta-section{background:var(--sage);color:var(--ink);padding:72px 0}
.expert-cta{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px 64px;align-items:center}
.expert-cta h2{font:500 clamp(30px,3.6vw,50px)/1.08 var(--display);letter-spacing:-.022em;margin:0 0 14px;text-wrap:balance}
.expert-cta p{margin:0;font-size:18px;line-height:1.6;max-width:36em;color:rgba(18,24,20,.8)}
.expert-cta-act{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.expert-cta-act .button{min-height:60px;padding:18px 28px;font-size:17px;background:var(--ink);border-color:var(--ink);color:var(--paper)}
.expert-cta-act .button:hover{background:var(--forest);border-color:var(--forest)}
.expert-cta-act span{font-size:14px;color:rgba(18,24,20,.75)}

/* ---- Closing (partner contact stays as secondary) ---- */
.home-page .closing-section{padding:96px 0}
.home-page .closing-grid p{font-size:18px}

@media(max-width:1050px){
  .how-grid{grid-template-columns:1fr}
  .home-page .hero-copy h1{max-width:none}
  .expert-cta{grid-template-columns:1fr}
}
@media(max-width:700px){
  .home-page .hero-home{padding-top:44px}
  .home-page .hero-copy h1{font-size:36px}
  .home-page .hero-primary{width:100%;justify-content:space-between}
  .home-page .hero-actions{flex-direction:column;align-items:stretch;gap:12px}
  .home-page .proof-bar{margin-top:44px;flex-direction:column;align-items:flex-start}
  .how-strip{padding:64px 0 48px}
  .how-steps{grid-template-columns:1fr}
  .home-page .doors-grid.doors-2,.door-links{grid-template-columns:1fr}
  .home-page .door-primary{padding:28px 22px}
  .door-link{padding:18px 22px}
  .home-page .founder-grid{grid-template-columns:1fr;gap:20px}
  .home-page .founder-text{padding-left:0;border-left:0}
  .home-page .founder-mark svg{width:56px;height:56px}
  .expert-cta-section{padding:56px 0}
  .expert-cta-act,.expert-cta-act .button{width:100%}
  .expert-cta-act .button{justify-content:space-between}
  .home-page .closing-grid .button{width:100%;justify-content:space-between}
  .home-page .bench-prov>div{grid-template-columns:1fr}
  .home-page .trace-demo{overflow:hidden}
}
