/* Keep home page hero copy legible over the photographs. */
.hero-three__title__top,
.hero-three__text {
  color: #fff;
}

.hero-three__title,
.hero-three__text {
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.65);
}

.hero-three__item__bg::before {
  background: linear-gradient(108deg, rgba(15, 18, 28, 0.92) 20%, rgba(0, 0, 0, 0.65) 100%);
  opacity: 1;
}

.hero-three .active .hero-three__text {
  opacity: 1;
}

/* Keep hero content visible immediately, including when motion is reduced. */
.hero-three__content { display:block; }
.hero-three__title,.hero-three__text,.hero-three__btn { transform:none !important; opacity:1 !important; transition:none; }
.hero-three__title__overlay-group { display:none; }
.hero-three { position:relative; }
.hero-pause { position:absolute; right:24px; bottom:24px; z-index:5; min-height:44px; padding:8px 16px; background:#142b50; border:1px solid #fff; border-radius:4px; color:#fff; font:inherit; font-size:13px; cursor:pointer; }
.hero-three .owl-dots .owl-dot { min-width:44px; min-height:44px; display:flex; align-items:center; justify-content:center; margin:0; }
.hero-three .owl-dots { gap:0; }
.home-projects { padding:72px 0 80px; background:#fff; }
.home-projects__header { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:28px; }
.home-projects__eyebrow { margin:0 0 10px; color:#253d81; font-size:12px; letter-spacing:1.5px; font-weight:800; text-transform:uppercase; }
.home-projects h2 { margin:0; font-size:clamp(30px,4vw,42px); color:#142b50; }
.home-projects__all,.home-projects__detail { display:inline-flex; align-items:center; gap:18px; min-height:44px; color:#253d81; font-weight:800; font-size:14px; text-decoration:none; }
.home-projects__all:hover,.home-projects__detail:hover { color:#b91420; }
.home-projects__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.home-projects__card { min-width:0; overflow:hidden; border:1px solid #e1e5ec; border-radius:6px; background:#f7f8fa; }
.home-projects__image { display:block; overflow:hidden; aspect-ratio:16/10; background:#edf0f4; }
.home-projects__image img { display:block; width:100%; height:100%; object-fit:cover; }
.home-projects__content { padding:28px; }
.home-projects__label { color:#53627a; font-size:11px; letter-spacing:1.2px; text-transform:uppercase; font-weight:800; margin:0 0 12px; }
.home-projects h3 { margin:0 0 12px; font-size:28px; line-height:1.2; }
.home-projects h3 a { color:#142b50; }
.home-projects__caption { margin:0 0 14px; line-height:1.8; color:#4f596b; overflow-wrap:anywhere; }
.home-projects__grid--single { grid-template-columns:1fr; }
.home-projects__grid--single .home-projects__card { display:grid; grid-template-columns:1.25fr 1fr; align-items:center; }
.home-projects__grid--single .home-projects__image { aspect-ratio:16/9; }
.home-projects__grid--single .home-projects__content { padding:40px; }
@media(max-width:991px) { .home-projects__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .home-projects__grid--single { grid-template-columns:1fr; } }
@media(max-width:575px) {
 .hero-three__item { padding:64px 0 110px; min-height:670px; }
 .hero-three__title { font-size:clamp(30px,8.5vw,40px); overflow-wrap:anywhere; }
 .hero-three__text { font-size:16px; line-height:1.8; margin-bottom:26px; }
 .hero-three .owl-dots { left:14px; bottom:18px; transform:none; width:auto; }
 .hero-pause { right:16px; bottom:22px; }
 .hero-three__btn .voldor-btn { padding-inline:22px; }
 .home-projects { padding:48px 0; }
 .home-projects__header { align-items:flex-start; flex-direction:column; gap:10px; }
 .home-projects__grid { grid-template-columns:1fr; }
 .home-projects__grid--single .home-projects__card { grid-template-columns:1fr; }
 .home-projects__grid--single .home-projects__content,.home-projects__content { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { .hero-three .active .hero-three__item__bg { animation:none; } }

/* Disabled Owl controls must not reserve space between homepage sections. */
.service-page--home .owl-nav.disabled,.service-page--home .owl-dots.disabled { display:none !important; }
.service-page--home .owl-dots:not(.disabled) { margin-top:16px; }
.service-page--home { padding-bottom:32px !important; }
.service-page--home + .home-projects { padding-top:40px; }
@media(max-width:575px) { .service-page--home { padding-bottom:24px !important; } .service-page--home + .home-projects { padding-top:32px; } }
