html {
  scroll-behavior: smooth;
}

body {
  background: #fff;
  overflow-x: hidden;
}

.hero-overlay {
  background: linear-gradient(90deg, rgba(7,17,31,0.98) 0%, rgba(7,17,31,0.92) 35%, rgba(7,17,31,0.60) 65%, rgba(7,17,31,0.35) 100%);
}

.shine {
  position: relative;
  overflow: hidden;
}

.shine::after {
  content: "";
  position: absolute;
  top: -120%;
  left: -40%;
  width: 30%;
  height: 280%;
  background: linear-gradient(120deg, transparent 0%, rgba(255,255,255,0.06) 35%, rgba(255,255,255,0.14) 50%, transparent 65%);
  transform: rotate(22deg);
  transition: all 0.9s ease;
  pointer-events: none;
}

.shine:hover::after {
  left: 120%;
}

.gradient-border {
  position: relative;
  background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02));
  border: 1px solid rgba(255,255,255,0.09);
}

.gradient-border::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(135deg, rgba(249,115,22,0.45), rgba(255,255,255,0.02), rgba(255,255,255,0.04));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}

.nav-scrolled {
  background: rgba(7,17,31,0.95) !important;
  border-color: rgba(255,255,255,0.12) !important;
  box-shadow: 0 20px 60px rgba(2,6,23,0.35);
}

.service-card:hover .service-icon {
  transform: translateY(-4px) scale(1.04);
}

.service-icon {
  transition: all 0.35s ease;
}

.floating-slow {
  animation: floatingSlow 6s ease-in-out infinite;
}

.floating-slow-2 {
  animation: floatingSlow 7.5s ease-in-out infinite;
}

@keyframes floatingSlow {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-10px); }
}

.pulse-soft {
  animation: pulseSoft 2.8s ease-in-out infinite;
}

@keyframes pulseSoft {
  0%, 100% { box-shadow: 0 0 0 0 rgba(249,115,22,0.25); }
  50% { box-shadow: 0 0 0 14px rgba(249,115,22,0); }
}

.heroSwiper,
.heroSwiper .swiper-wrapper,
.heroSwiper .swiper-slide {
  width: 100%;
  height: auto !important;
}

.heroSwiper .swiper-slide img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  object-position: center;
  transform: none !important;
  transition: transform 7s ease;
}

.heroSwiper .swiper-slide-active img {
  transform: none !important;
}

.hero-prev,
.hero-next {
  width: 54px !important;
  height: 54px !important;
  border-radius: 999px;
  background: rgba(255,255,255,0.12);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255,255,255,0.18);
  color: #fff !important;
}

.hero-prev::after,
.hero-next::after {
  font-size: 18px !important;
  font-weight: 700;
}

.hero-pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: rgba(255,255,255,0.65);
  opacity: 1;
}

.hero-pagination .swiper-pagination-bullet-active {
  width: 34px;
  border-radius: 999px;
  background: #F97316;
}
