/* How It Works — List. Compete. Connect. */

.visually-hidden{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.hiw-page{
  background:#f7f7f4;
  color:var(--cx-text);
}

.hiw-page .eyebrow{
  margin:0 0 14px;
  color:var(--cx-primary);
  font-size:12px;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.hiw-page h1,
.hiw-page h2,
.hiw-page h3{
  margin:0;
  letter-spacing:-.03em;
  line-height:1.02;
  text-wrap:balance;
}

.hiw-page .lead{
  margin:16px 0 0;
  max-width:40rem;
  color:var(--cx-muted);
  font-size:clamp(16px,1.5vw,19px);
  line-height:1.55;
}

.hiw-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}

.hiw-hero{
  padding:56px 0 48px;
  border-bottom:1px solid var(--cx-border);
  background:linear-gradient(180deg,#fbfbf8 0%,#f3f4ef 100%);
}

.hiw-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  gap:clamp(36px,5vw,72px);
  align-items:center;
}

.hiw-hero-copy{
  min-width:0;
  max-width:34rem;
  padding-right:4px;
}

.hiw-hero-copy h1{
  max-width:11ch;
  font-size:clamp(36px,4.8vw,60px);
  font-weight:900;
  text-transform:uppercase;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}

.hiw-hero-media{
  margin:0;
  min-width:0;
  aspect-ratio:4 / 3;
  overflow:hidden;
  background:#1a221d;
  isolation:isolate;
}

.hiw-hero-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.hiw-built{
  margin:18px 0 0;
  max-width:36rem;
  color:var(--cx-text);
  font-size:15px;
  font-weight:700;
  line-height:1.45;
}

.hiw-built span{
  display:block;
  margin-bottom:4px;
  color:var(--cx-primary);
  font-size:11px;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.hiw-steps{
  padding:56px 0;
}

.hiw-steps-intro{
  max-width:40rem;
  margin-bottom:28px;
}

.hiw-steps-intro h2{
  font-size:clamp(32px,4.2vw,52px);
  font-weight:900;
  text-transform:uppercase;
}

.hiw-step-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid var(--cx-border);
}

.hiw-step-list li{
  padding:22px 28px 0 0;
  border-right:1px solid var(--cx-border);
}

.hiw-step-list li:last-child{
  border-right:0;
  padding-right:0;
}

.hiw-step-list li + li{
  padding-left:28px;
}

.hiw-step-num{
  display:block;
  margin-bottom:10px;
  color:var(--cx-primary);
  font-size:11px;
  font-weight:900;
  letter-spacing:.14em;
}

.hiw-step-list h3{
  margin-bottom:10px;
  font-size:14px;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.hiw-step-list p{
  margin:0;
  max-width:34ch;
  color:var(--cx-muted);
  font-size:15px;
  line-height:1.5;
}

.hiw-paths{
  padding:8px 0 56px;
  border-top:1px solid var(--cx-border);
}

.hiw-paths-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
}

.hiw-path{
  padding:40px 40px 0 0;
  border-right:1px solid var(--cx-border);
}

.hiw-path:last-child{
  border-right:0;
  padding-right:0;
  padding-left:40px;
}

.hiw-path h3{
  max-width:16ch;
  font-size:clamp(24px,3vw,36px);
  font-weight:900;
  text-transform:uppercase;
}

.hiw-path .lead{
  max-width:36rem;
}

.hiw-benefits{
  display:grid;
  gap:10px;
  margin:20px 0 0;
  padding:0;
  list-style:none;
}

.hiw-benefits li{
  position:relative;
  padding-left:18px;
  color:var(--cx-text);
  font-size:15px;
  font-weight:650;
  line-height:1.4;
}

.hiw-benefits li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:8px;
  height:2px;
  background:var(--cx-primary);
}

.hiw-faq{
  padding:48px 0 56px;
  border-top:1px solid var(--cx-border);
  background:#fbfbf8;
}

.hiw-faq-intro{
  max-width:36rem;
  margin-bottom:24px;
}

.hiw-faq-intro h2{
  font-size:clamp(28px,3.6vw,44px);
  font-weight:900;
  text-transform:uppercase;
}

.hiw-faq-list{
  display:grid;
  gap:0;
  border-top:1px solid var(--cx-border);
}

.hiw-faq-item{
  padding:20px 0;
  border-bottom:1px solid var(--cx-border);
}

.hiw-faq-item h3{
  margin:0 0 8px;
  font-size:16px;
  font-weight:850;
  letter-spacing:-.02em;
  text-transform:none;
  line-height:1.25;
}

.hiw-faq-item p{
  margin:0;
  color:var(--cx-muted);
  font-size:15px;
  line-height:1.55;
}

body[data-page="how-it-works"] .site-footer{
  margin-top:0;
}

@media (max-width:900px){
  .hiw-hero-grid,
  .hiw-paths-grid,
  .hiw-step-list{
    grid-template-columns:1fr;
  }

  .hiw-hero-media{
    order:-1;
  }

  .hiw-hero-copy h1{
    max-width:none;
  }

  .hiw-step-list li,
  .hiw-step-list li + li{
    padding:18px 0 0;
    border-right:0;
  }

  .hiw-step-list li + li{
    border-top:1px solid var(--cx-border);
  }

  .hiw-path,
  .hiw-path:last-child{
    padding:32px 0 0;
    border-right:0;
  }

  .hiw-path + .hiw-path{
    margin-top:28px;
    padding-top:28px;
    border-top:1px solid var(--cx-border);
  }
}

@media (max-width:640px){
  .hiw-hero{padding-top:36px;padding-bottom:32px}
  .hiw-steps{padding:40px 0}
  .hiw-faq{padding-bottom:40px}

  .hiw-actions{
    flex-direction:column;
    align-items:stretch;
  }
}
