/* Homepage hero only; shared navigation and other pages are untouched. */
#sipolar-home-hero { width: 100%; background: #eaf5fd; color: #17233a; font-family: Arial, sans-serif; }
#sipolar-home-hero .home-hero-stage { height: 596px; position: relative; overflow: hidden; touch-action: pan-y; }
#sipolar-home-hero .home-hero-slide { position: absolute; inset: 0; background: #edf6fc; visibility: hidden; opacity: 0; transition: opacity .4s ease; pointer-events: none; }
#sipolar-home-hero .home-hero-slide.is-active { visibility: visible; opacity: 1; pointer-events: auto; }
#sipolar-home-hero .home-hero-art, #sipolar-home-hero .home-hero-first-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; max-width: none; }
#sipolar-home-hero .home-hero-art { object-fit: contain; object-position: center center; }
#sipolar-home-hero .home-hero-first-image { object-fit: contain; object-position: center center; }
#sipolar-home-hero .home-hero-first-link { position: absolute; inset: 0; display: block; }
#sipolar-home-hero .home-hero-copy { position: absolute; top: 50%; left: max(calc((100% - 1180px) / 2),5.3%); transform: translateY(-50%); width: 35%; max-width: 450px; z-index: 2; }
#sipolar-home-hero .home-hero-eyebrow { margin: 0 0 18px; color: #44718e; font-size: 12px; line-height: 1.4; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
#sipolar-home-hero h2 { font-family: Arial,sans-serif; font-size: clamp(30px,3.25vw,48px); line-height: 1.12; font-weight: 800; color: #142439; margin: 0 0 22px; letter-spacing: -.025em; text-shadow: none; }
#sipolar-home-hero .home-hero-description { margin: 0 0 28px; font-size: 16px; line-height: 1.65; color: #40576b; max-width: 390px; }
#sipolar-home-hero .home-hero-button { display: inline-flex; gap: 14px; align-items: center; justify-content: center; background: #b51717; border: 1px solid #b51717; color: #fff; border-radius: 5px; padding: 14px 19px; min-height: 47px; font-size: 14px; font-weight: 700; line-height: 1.3; text-decoration: none; }
#sipolar-home-hero .home-hero-button:hover { background: #901111; border-color: #901111; color: #fff; }
#sipolar-home-hero .home-hero-arrow { display: grid; place-items: center; position: absolute; top: 50%; transform: translateY(-50%); z-index: 3; width: 34px; height: 44px; padding: 0; border: 0; border-radius: 4px; background: rgba(255,255,255,.7); color: #315068; font-size: 31px; line-height: 1; cursor: pointer; }
#sipolar-home-hero .home-hero-prev { left: 9px; }
#sipolar-home-hero .home-hero-next { right: 9px; }
#sipolar-home-hero .home-hero-controls { height: 40px; display: flex; align-items: center; justify-content: center; gap: 18px; background: #fff; }
#sipolar-home-hero .home-hero-dots { display: flex; gap: 4px; }
#sipolar-home-hero .home-hero-dot { display: grid; place-items: center; padding: 0; width: 26px; height: 30px; background: transparent; border: 0; cursor: pointer; }
#sipolar-home-hero .home-hero-dot::before { content: ''; width: 7px; height: 7px; background: #bbc9d3; border-radius: 50%; }
#sipolar-home-hero .home-hero-dot.is-active::before { background: #b51717; }
#sipolar-home-hero .home-hero-pause { display: grid; place-items: center; width: 30px; height: 30px; border: 0; background: transparent; color: #40576b; cursor: pointer; font-size: 13px; padding: 0; }
#sipolar-home-hero .home-hero-status { color: #5e6878; font-size: 11px; }
#sipolar-home-hero button:focus-visible, #sipolar-home-hero a:focus-visible { outline: 2px solid #b51717; outline-offset: 3px; }
#sipolar-home-hero .home-hero-mobile-intro, #sipolar-home-hero .home-hero-mobile-series { display: none; }
/* Match the 1920 x 800 artwork on large screens instead of cropping its base. */
@media(min-width:1200px) {
  #sipolar-home-hero .home-hero-stage { height: auto; aspect-ratio: 12 / 5; }
}
@media(min-width:768px) and (max-width:1199px) {
  #sipolar-home-hero .home-hero-slide:not(.home-hero-first) .home-hero-art { top: auto; bottom: 0; width: 100%; height: auto; object-fit: contain; }
  #sipolar-home-hero .home-hero-copy { top: 32px; left: 6%; transform: none; width: 58%; max-width: 560px; }
  #sipolar-home-hero h2 { font-size: 34px; margin-bottom: 14px; }
  #sipolar-home-hero h2 br { display: none; }
  #sipolar-home-hero .home-hero-eyebrow { margin-bottom: 12px; }
  #sipolar-home-hero .home-hero-description { font-size: 14px; margin-bottom: 17px; max-width: 480px; }
}
@media(max-width:767px) {
  #sipolar-home-hero .home-hero-stage { height: 600px; }
  #sipolar-home-hero .home-hero-art { inset: auto 0 0; width: 100%; height: 265px; object-fit: cover; object-position: right center; }
  #sipolar-home-hero .home-hero-copy { top: 28px; left: 24px; right: 24px; transform: none; width: auto; max-width: none; }
  #sipolar-home-hero h2 { font-size: 30px; line-height: 1.14; margin-bottom: 15px; }
  #sipolar-home-hero .home-hero-eyebrow { font-size: 10px; margin-bottom: 13px; }
  #sipolar-home-hero .home-hero-description { font-size: 14px; line-height: 1.6; margin-bottom: 20px; max-width: 400px; }
  #sipolar-home-hero .home-hero-button { min-height: 44px; padding: 12px 16px; font-size: 13px; }
  #sipolar-home-hero .home-hero-arrow { top: auto; bottom: 108px; transform: none; width: 28px; height: 38px; }
  #sipolar-home-hero .home-hero-prev { left: 5px; }
  #sipolar-home-hero .home-hero-next { right: 5px; }
  #sipolar-home-hero .home-hero-first-link { display: none; }
  #sipolar-home-hero .home-hero-mobile-intro { display: block; }
  #sipolar-home-hero .home-hero-mobile-series { display: block; position: absolute; bottom: 35px; width: calc(100% - 20px); left: 10px; height: 230px; }
}
@media(max-width:359px) { #sipolar-home-hero .home-hero-stage { height: 620px; } #sipolar-home-hero h2 { font-size: 28px; } #sipolar-home-hero .home-hero-art { height: 215px; } #sipolar-home-hero .home-hero-arrow { bottom: 88px; } }
@media(prefers-reduced-motion:reduce) { #sipolar-home-hero .home-hero-slide { transition: none; } }
