.urovo-hero { background: #eaf4f7; }
.urovo-hero__banner { position: relative; width: 100%; height: calc(850 * var(--hero-u)); overflow: hidden; touch-action: pan-y; user-select: none; cursor: default; }
.urovo-hero__background { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; opacity: 0; transform: scale(1.055); transition: opacity 1.1s ease, transform 5.5s cubic-bezier(.2,.65,.3,1); }
.urovo-hero__slide.is-active .urovo-hero__background { z-index: 1; opacity: 1; transform: scale(1); }
.urovo-hero__shade { position: absolute; inset: 0; z-index: 2; pointer-events: none; }
.urovo-hero__copy-enter { animation: urovo-hero-copy .65s cubic-bezier(.22,1,.36,1) both; }
.urovo-hero__copy-enter--description { animation-delay: .16s; }
@keyframes urovo-hero-copy { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
.urovo-hero__scroll { position: absolute; z-index: 4; left: 50%; bottom: max(82px,calc(125 * var(--hero-u))); transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 10px; color: rgb(255 255 255 / 85%); text-decoration: none; cursor: default; }
.urovo-hero__scroll span { font-size: 9px; font-weight: 500; letter-spacing: .2em; white-space: nowrap; }
.urovo-hero__scroll svg path { animation: urovo-hero-mouse 1.8s ease-in-out infinite; }
.urovo-hero__scroll:hover { color: white; }
@keyframes urovo-hero-mouse { 0%,100% { transform: translateY(0); opacity: .45; } 50% { transform: translateY(3px); opacity: 1; } }
.urovo-hero__pagination { position: absolute; right: clamp(24px,4vw,76px); top: 50%; z-index: 10; display: flex; flex-direction: column; align-items: center; gap: 14px; transform: translateY(-50%); }
.urovo-hero__pagination-item { position: relative; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: rgb(255 255 255 / 60%); font: inherit; font-size: 12px; font-weight: 500; letter-spacing: .06em; cursor: default; transition: color .3s ease, background .3s ease, box-shadow .3s ease; }
.urovo-hero__pagination-item.is-active { color: white; background: rgb(10 27 77 / 20%); box-shadow: 0 4px 20px rgb(0 0 0 / 8%); backdrop-filter: blur(8px); }
.urovo-hero__pagination-item:hover { color: white; background: rgb(0 174 239 / 20%); }
.urovo-hero__ring { position: absolute; inset: 0; width: 100%; height: 100%; transform: rotate(-90deg); pointer-events: none; visibility: hidden; }
.is-active > .urovo-hero__ring { visibility: visible; }
@media (min-width: 1921px) { .urovo-hero__banner { height: 44.27vw; } }
@media (max-width: 1023px) {
  .urovo-hero__banner { height: 610px; }
  .urovo-hero__background { object-position: 60% center; }
}
@media (max-width: 639px) {
  .urovo-hero__banner { height: 600px; }
  .urovo-hero__background { object-position: 64% center; }
  .urovo-hero__scroll { left: auto; right: 20px; bottom: 142px; transform: none; }
  .urovo-hero__scroll span { display: none; }
  .urovo-hero__pagination { right: 20px; top: auto; bottom: 78px; flex-direction: row; gap: 8px; transform: none; }
  .urovo-hero__pagination-item { width: 38px; height: 38px; font-size: 11px; }
}

/* Match the reference's reserved native scrollbar without hiding page scrolling. */
html:has(body.path-frontpage) { scrollbar-gutter: stable; scroll-behavior: smooth; }


.urovo-hero__slides { position: absolute; inset: 0; }
.urovo-hero__slides:not(.is-initialized) .urovo-hero__slide:first-child .urovo-hero__background { z-index: 1; opacity: 1; transform: scale(1); }
.urovo-hero__pagination:empty, .urovo-hero__pagination[hidden] { display: none; }

.urovo-hero__slide { position: absolute; inset: 0; }
.urovo-hero__slide .urovo-hero__content, .urovo-hero__slide .urovo-hero__shade { visibility: hidden; }
.urovo-hero__slide.is-active .urovo-hero__content, .urovo-hero__slide.is-active .urovo-hero__shade,
.urovo-hero__slides:not(.is-initialized) .urovo-hero__slide:first-child .urovo-hero__content,
.urovo-hero__slides:not(.is-initialized) .urovo-hero__slide:first-child .urovo-hero__shade { visibility: visible; }
