/* ============================================================
   HERO, rebuilt
   The orbit version buried the message behind an animation. This one
   leads with the sentence, then proves it with three numbers.
   ============================================================ */

.hero{
  position:relative; min-height:92vh;
  display:flex; flex-direction:column; overflow:hidden;
  background:
    radial-gradient(120% 90% at 82% 12%, rgba(199,164,114,.20), rgba(199,164,114,0) 55%),
    radial-gradient(90% 70% at 8% 88%, rgba(172,148,188,.10), rgba(172,148,188,0) 58%),
    linear-gradient(168deg, #FCFBF9 0%, #F5F2EC 58%, #EFEAE1 100%);
}
.hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.45;z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");
  mix-blend-mode:multiply;
}
.hero__inner{
  position:relative;z-index:1;flex:1;
  width:100%;max-width:1360px;margin-inline:auto;
  padding:calc(var(--nav-h) + clamp(3rem,8vh,6rem)) var(--gutter) clamp(2rem,4vh,3rem);
  display:flex;flex-direction:column;justify-content:center;
  align-items:flex-start;
}
.hero__lede{ max-width:min(100%, 980px); }
.hero__title{
  font-family:var(--font-display);
  font-size:clamp(2.3rem, 5.4vw, 5.1rem);
  font-weight:600;line-height:1.04;letter-spacing:-.038em;color:var(--text);
  text-wrap:balance;
  opacity:0;transform:translateY(28px);
  animation:heroUp 1s cubic-bezier(.22,1,.36,1) .1s forwards;
}
.hero__title .soft{ display:block; color:var(--text-3); }
@keyframes heroUp{ to{opacity:1;transform:none} }
.hero__sub{
  margin-top:clamp(1.4rem,2.4vw,2rem);max-width:52ch;
  font-size:clamp(1.05rem,1.35vw,1.25rem);line-height:1.6;color:var(--text-2);
  opacity:0;transform:translateY(24px);
  animation:heroUp .9s cubic-bezier(.22,1,.36,1) .3s forwards;
}
.hero__actions{
  display:flex;flex-wrap:wrap;align-items:center;gap:16px;
  margin-top:clamp(1.9rem,3vw,2.6rem);
  opacity:0;transform:translateY(24px);
  animation:heroUp .9s cubic-bezier(.22,1,.36,1) .45s forwards;
}
.btn-slide{
  position:relative;overflow:hidden;isolation:isolate;
  display:inline-flex;align-items:center;gap:10px;
  padding:15px 30px;border-radius:50px;
  background:var(--ink);color:var(--paper);
  font-size:1rem;font-weight:500;white-space:nowrap;border:1px solid var(--ink);
}
.btn-slide::after{
  content:"";position:absolute;inset:0;z-index:-1;background:var(--bronze);
  transform:translateX(-100%);transition:transform .45s cubic-bezier(.22,1,.36,1);
}
.btn-slide:hover::after{transform:translateX(0)}
.btn-slide svg{width:17px;height:17px;flex:none;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.btn-slide:hover svg{transform:translateX(3px)}
.btn-quiet{
  display:inline-flex;align-items:center;gap:9px;
  font-size:1rem;font-weight:500;color:var(--text);padding-bottom:3px;
  background-image:linear-gradient(currentColor,currentColor);
  background-size:0 1px;background-position:0 100%;background-repeat:no-repeat;
  transition:background-size .45s cubic-bezier(.16,1,.3,1);
}
.btn-quiet:hover{background-size:100% 1px}

/* ---- THE PROOF STRIP: three numbers, given room ---- */
.proof{
  position:relative;z-index:1;margin-top:clamp(3rem,7vh,5.5rem);
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);
  border-radius:var(--radius-lg);overflow:hidden;
  box-shadow:0 30px 70px -40px rgba(11,11,12,.35);
  opacity:0;transform:translateY(30px);
  animation:heroUp 1s cubic-bezier(.22,1,.36,1) .6s forwards;
}
.proof__cell{
  background:linear-gradient(170deg,#FFFFFF 0%,#FAF7F2 100%);
  padding:clamp(1.5rem,2.8vw,2.4rem);
  display:flex;flex-direction:column;transition:background .5s var(--ease);
}
.proof__cell:hover{background:linear-gradient(170deg,#FFFFFF 0%,#F6F0E6 100%)}
.proof__v{
  font-family:var(--font-display);
  font-size:clamp(2.6rem,5.4vw,4.4rem);
  font-weight:600;letter-spacing:-.045em;line-height:1;color:var(--ink);
  display:flex;align-items:baseline;
}
.proof__v em{font-style:normal;color:var(--bronze);margin-left:.04em}
.proof__t{margin-top:.85rem;font-size:clamp(1rem,1.25vw,1.12rem);font-weight:600;letter-spacing:-.012em;color:var(--text)}
.proof__d{margin-top:.4rem;font-size:var(--fs-sm);line-height:1.55;color:var(--text-2);max-width:30ch}
@media(max-width:900px){ .proof{grid-template-columns:1fr} .hero__lede{max-width:none} }

.hero__ticker{
  position:relative;z-index:1;overflow:hidden;
  padding-block:clamp(1.4rem,3vh,2.2rem);
  opacity:0;animation:heroUp .9s cubic-bezier(.22,1,.36,1) .8s forwards;
}
@media(max-width:768px){ .hero{min-height:auto} .hero__title{font-size:clamp(2.2rem,9vw,3.2rem)} }
@media(prefers-reduced-motion:reduce){
  .hero__title,.hero__sub,.hero__actions,.proof,.hero__ticker{opacity:1;transform:none;animation:none}
}
