/* Printmark Technologies - Global Styles */

html {
  scroll-behavior: smooth;
}

/* Keep icon glyphs on the Font Awesome font when multiple icon stylesheets load. */
.fa,
.fas,
.fa-solid,
.fa-regular {
  font-family: 'Font Awesome 6 Free' !important;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  display: inline-block;
}

.far,
.fa-regular {
  font-weight: 400;
}

.fab,
.fa-brands {
  font-family: 'Font Awesome 6 Brands' !important;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  display: inline-block;
}

#home-slider {
  touch-action: pan-y;
}

#product-main-image-button,
.product-gallery-thumb {
  touch-action: manipulation;
}

.client-logo-track {
  transition: transform 0.45s ease;
}

#client-logo-slider,
.client-logo-track {
  touch-action: pan-y;
}

.client-logo-slide {
  flex: 0 0 calc((100% - 0.75rem) / 2);
}

@media (min-width: 640px) {
  .client-logo-slide {
    flex-basis: calc((100% - 2.5rem) / 3);
  }
}

@media (min-width: 1024px) {
  .client-logo-slide {
    flex-basis: calc((100% - 6.25rem) / 6);
  }
}

.client-logo-image {
  width: 150px;
  height: 48px;
  object-fit: contain;
  filter: grayscale(1);
  opacity: 0.72;
  transition: filter 0.2s ease, opacity 0.2s ease;
}

.client-logo-image:hover {
  filter: grayscale(0);
  opacity: 1;
}

.font-heading {
  font-family: 'Poppins', ui-sans-serif, system-ui, sans-serif;
}

/* Hero gradient background */
.hero-gradient {
  background: linear-gradient(120deg, #0a2540 0%, #0b4f9e 55%, #0d63c4 100%);
}

/* Section fade-in on scroll.
   IMPORTANT: content must be visible by default (progressive enhancement).
   JS adds ".reveal-armed" only after it successfully initializes; only then
   do elements start hidden and fade in via IntersectionObserver. This way,
   if JavaScript is blocked, slow, or errors out, all content stays visible
   instead of being stuck at opacity:0. */
.reveal {
  opacity: 1;
  transform: none;
}
.reveal.reveal-armed {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.reveal.reveal-armed.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Card hover lift */
.hover-lift {
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.hover-lift:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 40px -12px rgba(11, 79, 158, 0.25);
}

/* Line clamp utility (fallback for older browsers via Tailwind is fine, but keep as backup) */
.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Custom scrollbar for spec tables on mobile */
.spec-table-wrap::-webkit-scrollbar {
  height: 6px;
}
.spec-table-wrap::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 3px;
}

/* Accordion chevron rotate */
.accordion-btn[aria-expanded="true"] .accordion-chevron {
  transform: rotate(180deg);
}
.accordion-chevron {
  transition: transform 0.2s ease;
}

/* Badge */
.badge-india {
  background: linear-gradient(90deg, #ff9933 0%, #ffffff 50%, #138808 100%);
}

/* Accordion panel animation */
.accordion-panel {
  max-height: 0px;
  overflow: hidden;
  transition: max-height 0.3s ease;
}
.bg-brand-blue {
    background: #0a2540;
}