/* Homepage hero: sentence-length H1, body-sized brand line, route links.
   Loaded last so it overrides the poster-scale headline rules. */

#customer-view .hero h1{
  font-size:clamp(32px, 2.5vw + 14px, 48px);
  line-height:1.12;
  letter-spacing:-.032em;
  margin:14px 0 10px;
  max-width:15em;
  font-weight:900;
  text-wrap:balance;
}

#customer-view .hero-brand-line{
  margin:0 0 16px;
  max-width:36em;
  font-size:17px;
  font-weight:500;
  line-height:1.45;
  letter-spacing:0;
  color:#242424;
}

#customer-view .hero-copy .lead{
  max-width:40em;
  margin-bottom:12px;
}

#customer-view .hero-route-links{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px 22px;
  margin:0 0 22px;
}

#customer-view .hero-route-links a{
  color:#a63b00;
  font-size:16px;
  font-weight:700;
  line-height:1.35;
  text-decoration:underline;
  text-decoration-thickness:1.5px;
  text-underline-offset:3px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
}

#customer-view .hero-route-links a:hover{
  color:#8d3200;
}

#customer-view .hero-route-links a:focus-visible{
  outline:3px solid rgba(166,59,0,.55);
  outline-offset:3px;
  border-radius:4px;
}

@media (max-width:760px){
  #customer-view .hero h1{
    font-size:clamp(30px, 8vw, 36px);
    line-height:1.14;
    letter-spacing:-.028em;
    margin:12px 0 8px;
    max-width:none;
  }
  #customer-view .hero-brand-line{
    font-size:16px;
    margin-bottom:12px;
  }
  #customer-view .hero-route-links{
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    margin-bottom:16px;
  }
}

@media (max-width:620px){
  #customer-view .hero h1{
    font-size:clamp(28px, 7.6vw, 34px)!important;
    line-height:1.16!important;
    letter-spacing:-.026em!important;
  }
}
