/* Homepage only, loaded last so old slider patches cannot narrow the copy.
   Keep the existing image sizing, sharpness and vertical text alignment. */
@media (min-width:721px) {
  .hero .hero-slide .hero-content {
    width:min(1040px,calc(100% - 112px))!important;
    max-width:1040px!important;
    padding-left:clamp(92px,7vw,142px)!important;
  }
  .hero .hero-slide .hero-content h1,
  .hero .hero-slide .hero-content h2 { max-width:900px!important; }
  .hero .hero-slide .hero-content p { max-width:820px!important; }
}
.hero .hero-slide .hero-content .btn {
  min-height:54px!important;
  max-width:100%;
  padding:15px 26px!important;
  font-size:16px!important;
  line-height:1.4!important;
  gap:10px;
  white-space:normal;
  text-align:center;
}
.hero .hero-content .btn .ui-icon { width:22px;height:22px;flex-shrink:0; }
.hero .hero-arrow {
  top:50%!important;
  transform:translateY(-50%)!important;
  width:60px!important;
  height:60px!important;
  display:grid!important;
  place-items:center;
  padding:0!important;
  font-size:36px!important;
  line-height:1!important;
  touch-action:manipulation;
}
.hero .hero-arrow.prev { left:16px!important; }
.hero .hero-arrow.next { right:16px!important; }
.hero .hero-arrow:focus-visible { outline:3px solid #fff;outline-offset:3px; }
@media (max-width:980px) and (min-width:721px) {
  .hero .hero-slide .hero-content {
    width:calc(100% - 80px)!important;
    padding-left:88px!important;
  }
}
@media (max-width:720px) {
  .hero .hero-slide .hero-content { padding-left:60px!important;padding-right:58px!important; }
  .hero .hero-slide .hero-content .btn {
    min-height:50px!important;
    padding:12px 18px!important;
    font-size:14px!important;
    gap:8px;
  }
  .hero .hero-arrow { width:44px!important;height:44px!important;font-size:29px!important; }
  .hero .hero-arrow.prev { left:6px!important; }
  .hero .hero-arrow.next { right:6px!important; }
}
