/* Minimal extras — Tailwind handles most styling */

.hp { position: absolute; left: -9999px; opacity: 0; height: 0; width: 0; }

/* Hero slider */
.hero-slider { position: absolute; inset: 0; }
.hero-slide {
  position: absolute; inset: 0;
  opacity: 0;
  transition: opacity 1.4s ease;
}
.hero-slide.active { opacity: 1; }
.hero-slide img {
  width: 100%; height: 100%; object-fit: cover;
  transform: scale(1);
}
.hero-slide.active img {
  animation: kenBurns 14s ease-out forwards;
}
@keyframes kenBurns {
  to { transform: scale(1.08); }
}

.hero-pattern {
  background-image: radial-gradient(rgba(255,255,255,0.12) 1px, transparent 1px);
  background-size: 28px 28px;
}

.hero-tab.active {
  background: rgba(0,168,120,0.28);
  border-color: #00A878;
  color: #fff;
}

/* Marquee */
.marquee-track {
  animation: scroll 35s linear infinite;
  width: max-content;
}
@keyframes scroll {
  to { transform: translateX(-50%); }
}

/* Card hover */
.card-hover {
  transition: transform 0.3s cubic-bezier(0.4,0,0.2,1), box-shadow 0.3s ease, border-color 0.3s ease;
}
.card-hover:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 40px rgba(15,44,89,0.14);
  border-color: rgba(0,168,120,0.25);
}

/* FAQ */
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item[open] .faq-icon { transform: rotate(45deg); }

/* Header scrolled */
#header.scrolled {
  border-bottom-color: #E5E7EB;
  box-shadow: 0 1px 3px rgba(15,44,89,0.07);
}

/* Hidden utility (Tailwind CDN may not have all states) */
.hidden { display: none !important; }