/* V2 premium treatment shared by service, industry and company pages. */
.page-hero.ph-enhanced {
  isolation: isolate;
  min-height: clamp(420px, 58vw, 680px);
  display: grid;
  align-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 78% 24%, color-mix(in srgb, var(--v2-accent) 22%, transparent), transparent 34%),
    radial-gradient(circle at 12% 82%, rgba(124, 58, 237, .18), transparent 36%),
    linear-gradient(180deg, #07091c 0%, #0a0d24 100%);
}

.page-hero .container { position: relative; z-index: 2; }
.page-hero h1 { max-width: 900px; text-wrap: balance; }
.page-hero .ph-sub { max-width: 720px; font-size: clamp(1rem, 1.7vw, 1.25rem); }
.breadcrumb { display: flex; flex-wrap: wrap; gap: .55rem; color: var(--v2-text-muted); }
.breadcrumb a { color: #c8d0ff; }

.dg-card,
.service-card,
.ind-full-card,
.cat-card,
.project-card,
.blog-card {
  border: 1px solid rgba(151, 164, 255, .15) !important;
  background: linear-gradient(145deg, rgba(20, 25, 61, .86), rgba(8, 11, 31, .94)) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .24), inset 0 1px rgba(255, 255, 255, .05);
  transform-style: preserve-3d;
  transition: transform .35s cubic-bezier(.2,.8,.2,1), border-color .35s ease, box-shadow .35s ease;
}

@media (hover: hover) and (pointer: fine) {
  .dg-card:hover,
  .service-card:hover,
  .ind-full-card:hover,
  .cat-card:hover,
  .project-card:hover,
  .blog-card:hover {
    transform: translateY(-8px) perspective(900px) rotateX(1.5deg);
    border-color: rgba(93, 234, 255, .38) !important;
    box-shadow: 0 30px 90px rgba(31, 42, 118, .28), inset 0 1px rgba(255, 255, 255, .08);
  }
}

.section { position: relative; }
.section::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, transparent, #000 15%, #000 85%, transparent);
}

@media (max-width: 768px) {
  .page-hero.ph-enhanced { min-height: 460px; padding-top: 7rem; }
  .page-hero h1 { font-size: clamp(2.25rem, 12vw, 3.8rem); }
  .dg-card, .service-card, .ind-full-card, .cat-card { transform: none !important; }
}

@media (prefers-reduced-motion: reduce) {
  .dg-card, .service-card, .ind-full-card, .cat-card, .project-card, .blog-card { transition: none; }
}

.github-footer-btn svg {
  width: 42px;
  height: 42px;
  color: #fff;
  filter: drop-shadow(0 0 12px rgba(124, 58, 237, .5));
}
