/* Fixed header */
header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100vw;
  z-index: 9999; /* High enough to stay above content */
}

/* Prevent global horizontal scrolling */
html, body {
  overflow-x: hidden;
  width: 100%;
}

/* Hero carousel images */
.hero-carousel img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Hero carousel container */
.hero-carousel {
  overflow-x: hidden;
  width: 100%;
}

/* Hero slides */
.hero-carousel .slide {
  position: absolute;
  inset: 0;
  z-index: 0;
}

/* Hero overlay */
.hero-carousel .slide-overlay {
  z-index: 0;
  pointer-events: none;
}

/* Slide content */
.hero-carousel .slide-content {
  pointer-events: auto;
}



/* Base Card */
.service-card {
  display: block;
  text-decoration: none;
  color: inherit;
}

.service-card > div {
  border-radius: 1rem; /* rounded-xl */
  border: 1px solid #e5e7eb; /* light gray border */
  box-shadow: 0 4px 10px rgba(0,0,0,0.08); /* shadow-xl */
  transition: all 0.3s ease;
  background-color: #fff; /* bg-base-white */
}

.service-card > div:hover {
  box-shadow: 0 6px 16px rgba(0,0,0,0.12); /* hover shadow */
  border-color: #2563eb; /* hover:border-secondary (blue) */
}

/* Card Header */
.card-header {
  display: grid;
  grid-template-rows: auto auto;
  grid-auto-rows: min-content;
  align-items: start;
  gap: 0.375rem; /* gap-1.5 */
  padding: 1.5rem 1.5rem 0 1.5rem; /* px-6 pt-6 */
}

.card-header.has-action {
  grid-template-columns: 1fr auto;
  padding-bottom: 1.5rem; /* [.border-b]:pb-6 */
  border-bottom: 1px solid #e5e7eb;
}

/* Card Title */
.card-title {
  font-size: 1.25rem; /* text-xl */
  font-weight: 600;   /* font-semibold */
  line-height: 1.2;   /* leading-none */
  color: #1e293b;     /* text-navy */
  transition: color 0.3s ease;
}

.service-card:hover .card-title {
  color: #2563eb; /* group-hover:text-primary */
}

/* Card Description */
.card-description {
  font-size: 0.875rem; /* text-sm */
  color: #6b7280;      /* text-muted-foreground */
}

/* Card Action */
.card-action {
  grid-column-start: 2;
  grid-row: 1 / span 2;
  align-self: start;
  justify-self: end;
  color: #2563eb;
  cursor: pointer;
  transition: color 0.3s ease;
}

.card-action:hover {
  color: #9333ea; /* hover:text-secondary (purple) */
}

/* Card Content */
.card-content {
  padding: 0 1.5rem; /* px-6 */
}

.card-content:last-child {
  padding-bottom: 1.5rem; /* [&:last-child]:pb-6 */
}

/* Card Footer */
.card-footer {
  display: flex;
  align-items: center;
  padding: 0 1.5rem 1.5rem 1.5rem; /* px-6 pb-6 */
  border-top: 1px solid #e5e7eb;   /* [.border-t]:pt-6 */
  padding-top: 1.5rem;
}

/* Icon Wrapper */
.icon-wrapper {
  width: 3.5rem;  /* w-14 */
  height: 3.5rem; /* h-14 */
  border-radius: 0.5rem; /* rounded-lg */
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem; /* mb-4 */
}

.icon-wrapper i {
  font-size: 2rem; /* w-8 h-8 equivalent */
  transition: color 0.3s ease;
}

.service-card:hover .icon-wrapper i {
  color: #9333ea; /* group-hover:text-secondary */
}
