@import url('https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@500;600;700&display=swap');

/* Homepage-only refinements. Loaded after the shared design system. */
.hero-copy{max-width:900px}
.hero h1{
  max-width:14.6ch;
  font-family:"Instrument Sans","Figtree",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(52px,6.55vw,82px);
  font-weight:600;
  line-height:.97;
  letter-spacing:-.052em;
  text-wrap:balance;
  margin-bottom:30px;
}
.hero h1 em{
  font-family:inherit;
  font-style:normal;
  font-weight:600;
  color:#63e0b8;
  letter-spacing:-.057em;
}
.hero .eyebrow{
  font-weight:700;
  letter-spacing:.13em;
}
.hero .sub{
  max-width:56ch;
  font-size:clamp(18px,1.7vw,21px);
  line-height:1.58;
  letter-spacing:-.012em;
}

.proof-strip{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(70% 180% at 7% -50%,rgba(23,163,122,.18),transparent 62%),
    radial-gradient(45% 140% at 92% 120%,rgba(201,138,43,.07),transparent 60%),
    linear-gradient(180deg,#101b21 0%,#0b151a 100%);
  color:#fff;
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.proof-strip::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.025),transparent 28%,transparent 72%,rgba(255,255,255,.018));
}
.proof-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.proof{
  position:relative;
  min-height:180px;
  padding:38px 34px 34px;
  border-right:1px solid rgba(255,255,255,.11);
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  transition:background .35s ease;
}
.proof:hover{background:rgba(255,255,255,.025)}
.proof:first-child{padding-left:0}
.proof:last-child{padding-right:0;border-right:0}
.proof::before{
  content:"";
  position:absolute;
  top:0;
  left:34px;
  width:34px;
  height:2px;
  background:linear-gradient(90deg,#58ddb0,rgba(88,221,176,0));
  opacity:.9;
}
.proof:first-child::before{left:0}
.proof strong{
  display:block;
  color:#f7fbf9;
  font-size:clamp(34px,3.6vw,48px);
  font-weight:750;
  line-height:.98;
  letter-spacing:-.055em;
  text-wrap:balance;
}
.proof span{
  display:block;
  max-width:27ch;
  margin-top:14px;
  color:#a8bab3;
  font-size:13.5px;
  line-height:1.48;
  letter-spacing:.005em;
}

@media (max-width:1000px){
  .hero h1{max-width:13.8ch;font-size:clamp(50px,8vw,72px)}
  .proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .proof{min-height:164px}
  .proof:nth-child(2){border-right:0}
  .proof:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.11)}
  .proof:nth-child(3){padding-left:0}
  .proof:nth-child(3)::before{left:0}
}

@media (max-width:680px){
  .hero h1{max-width:12.8ch;font-size:clamp(43px,13vw,60px);line-height:.98;letter-spacing:-.048em}
  .hero .sub{font-size:18px;line-height:1.55}
  .proof-grid{grid-template-columns:1fr 1fr}
  .proof{min-height:170px;padding:30px 18px 28px}
  .proof:nth-child(odd){padding-left:0}
  .proof:nth-child(even){padding-right:0}
  .proof:nth-child(odd)::before{left:0}
  .proof:nth-child(even)::before{left:18px}
  .proof strong{font-size:clamp(30px,9vw,40px)}
  .proof span{font-size:12.5px;line-height:1.45;margin-top:11px}
}

@media (max-width:420px){
  .proof{min-height:184px}
}
