/* Custom Styles for PSN Template */

/* Colors */
.text-navy {
  color: #0b1a47 !important;
}

.bg-navy {
  background-color: #0b1a47 !important;
}

.text-orange-custom {
  color: #f07b22 !important;
}

.text-gray-blue {
  color: #8da4be !important;
}

/* typography & layouts */
.subtitle-orange {
  color: #f07b22;
  font-weight: 700;
  letter-spacing: 1px;
}

.title-spaced {
  letter-spacing: 1px;
  font-weight: 700;
}

/* Icons & Bullets */
.icon-box-navy {
  background-color: #0b1a47 !important;
  border-color: #0b1a47 !important;
  border-radius: 0 !important;
}

/* Custom Section Background */
.section-bg-custom {
  background-image: url('../img/footer-bg.png') !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.icon-box-orange {
  background-color: #f07b22 !important;
  border-color: #f07b22 !important;
  border-radius: 0 !important;
}

.bullet-orange {
  height: 6px;
  width: 6px;
  background-color: #f07b22;
  display: inline-block;
  border-radius: 50%;
  margin-right: 10px;
}

/* Font Sizes */
.icon-xxl {
  font-size: 3.5rem;
  line-height: 1;
}

.icon-xl {
  font-size: 2.2rem;
  line-height: 1;
}

/* Opacity */
.opacity-20 {
  opacity: 0.2 !important;
}

.opacity-70 {
  opacity: 0.7 !important;
}

.opacity-80 {
  opacity: 0.8 !important;
}

.opacity-85 {
  opacity: 0.85 !important;
}

/* Utils */
.pos-top-left {
  top: 0rem;
  left: 0rem;
}

.pos-bottom-right {
  bottom: 0rem;
  right: 0rem;
}

.overflow-hidden {
  overflow: hidden !important;
}

/* Interactive Cards */
.card-service-interactive {
  transition: all 0.3s ease-in-out !important;
  background-color: #ffffff;
}

.card-service-interactive .service-icon {
  background-color: #0b1a47 !important;
  border-color: #0b1a47 !important;
  border-radius: 0 !important;
  transition: all 0.3s ease-in-out;
}

.card-service-interactive .service-title {
  color: #0b1a47 !important;
  transition: all 0.3s ease-in-out;
}

.card-service-interactive .service-text {
  color: #60697b !important;
  transition: all 0.3s ease-in-out;
}

.card-service-interactive .service-list-text {
  color: #8da4be !important;
  transition: all 0.3s ease-in-out;
}

.card-service-interactive .bullet-orange {
  transition: all 0.3s ease-in-out;
}

/* Hover State */
.card-service-interactive:hover {
  background-color: #0b1a47 !important;
}

.card-service-interactive:hover .service-icon {
  background-color: #f07b22 !important;
  border-color: #f07b22 !important;
}

.card-service-interactive:hover .service-title {
  color: #ffffff !important;
}

.card-service-interactive:hover .service-text {
  color: rgba(255, 255, 255, 0.8) !important;
}

.card-service-interactive:hover .service-list-text {
  color: rgba(255, 255, 255, 0.85) !important;
}

/* Custom Buttons */
.btn-orange-custom {
  background-color: #f07b22 !important;
  border-color: #f07b22 !important;
  color: #ffffff !important;
}

.btn-orange-custom:hover {
  background-color: #d86916 !important;
  border-color: #d86916 !important;
  color: #ffffff !important;
}

/* Sticky Navbar Override (Mencegah jadi Putih saat dinamis) */
.navbar.navbar-stick,
.navbar-clone.navbar-stick {
  background-color: #0b1a47 !important;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.navbar.navbar-stick .nav-link,
.navbar-clone.navbar-stick .nav-link {
  color: #ffffff !important;
}

.navbar.navbar-stick .nav-link:hover,
.navbar-clone.navbar-stick .nav-link:hover {
  color: #f07b22 !important;
}

.navbar.navbar-stick .logo-dark,
.navbar-clone.navbar-stick .logo-dark {
  display: none !important;
}

.navbar.navbar-stick .logo-light,
.navbar-clone.navbar-stick .logo-light {
  display: inline-block !important;
}

/* Safari Hero Fix - bg-white menutupi background-image di WebKit */
.swiper-hero .swiper-slide.bg-white {
  background-color: transparent !important;
}
.swiper-hero .swiper-slide {
  -webkit-background-size: cover !important;
  background-size: cover !important;
  background-position: center center !important;
}

/* Responsive Aksen Visi Misi Mobile */
@media (max-width: 991.98px) {
  .aksen-left-img {
    height: auto !important;
    width: 50% !important;
    max-width: 250px;
    opacity: 0.3 !important;
  }
  .aksen-right-img {
    height: auto !important;
    width: 60% !important;
    max-width: 280px;
    opacity: 0.3 !important;
  }
}