/* A fading logo-colored trail; pointer events pass through the canvas. */
.brand-cursor-trail {
  position: fixed;
  inset: 0;
  z-index: 99999;
  width: 100%;
  height: 100%;
  opacity: 0.7;
  pointer-events: none;
  display: none;
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .brand-cursor-trail { display: block; }
  html[data-home-theme="dark"] .brand-cursor-trail { opacity: 0.9; }
}

/* Shared glass surfaces. Opaque defaults also support browsers without blur. */
.site-shell {
  --glass-surface: #f8f9fc;
  --glass-tint: rgba(250, 251, 254, 0.82);
  --glass-edge: rgba(255, 255, 255, 0.7);
  --glass-shadow: 0 12px 36px rgba(22, 35, 56, 0.09);
}

html[data-home-theme="dark"] .site-shell {
  --glass-surface: #1c232e;
  --glass-tint: rgba(28, 35, 46, 0.86);
  --glass-edge: rgba(191, 209, 233, 0.18);
  --glass-shadow: 0 12px 36px rgba(0, 0, 0, 0.22);
}

.site-shell .home-header .main-box.style-two,
.site-shell .home-header .sticky-header,
.site-shell .project-menu,
.site-shell .home-services .service-card {
  background: var(--glass-surface);
  box-shadow: var(--glass-shadow), inset 0 1px 0 var(--glass-edge);
}



.site-shell .project-menu {
  border: 1px solid var(--glass-edge);
  border-top: 0;
  border-radius: 0 0 16px 16px;
}

.site-shell .home-services .service-card {
  border: 1px solid var(--glass-edge);

  transition: transform 280ms ease, box-shadow 280ms ease, border-color 280ms ease;
}

/* Replace the template's stacked opaque plates with a single glass panel. */
.site-shell .home-services .service-card::before,
.site-shell .home-services .service-card::after {
  display: none;
}

.home-page .home-services {
  background-image: radial-gradient(ellipse at 15% 75%, rgba(238, 158, 58, 0.13), transparent 55%),
    radial-gradient(ellipse at 90% 20%, rgba(99, 137, 192, 0.12), transparent 55%);
}

.site-shell .theme-btn .btn-title {
  display: inline-block;
  transition: transform 220ms ease;
}

.site-shell .home-header .theme-toggle,
.site-shell .home-header .menu-toggle {
  transition: background-color 220ms ease, color 220ms ease, border-color 220ms ease;
}

.site-shell .home-header .ui-btn:hover {
  background-color: rgba(232, 158, 56, 0.12);
}

@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  /* Match the theme selectors so glass also applies in dark mode. */
  html[data-home-theme] .site-shell .home-header .main-box.style-two,
  html[data-home-theme] .site-shell .home-header .sticky-header,
  html[data-home-theme] .site-shell .project-menu,
  html[data-home-theme] .site-shell .home-services .service-card {
    background: linear-gradient(135deg, var(--glass-edge), transparent 65%), var(--glass-tint);
    -webkit-backdrop-filter: blur(18px) saturate(125%);
    backdrop-filter: blur(18px) saturate(125%);
  }
}

@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .site-shell .home-services .service-card:hover,
  .site-shell .home-services .service-card:focus-visible {
    transform: translateY(-7px);
    border-color: #d99a3e;
    box-shadow: 0 22px 44px rgba(22, 35, 56, 0.15), inset 0 1px 0 var(--glass-edge);
  }

  .site-shell .theme-btn:hover .btn-title {
    transform: translateX(3px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-shell .wow {
    visibility: visible !important;
  }

  .site-shell .bounce-x,
  .site-shell .bounce-y,
  .site-shell .marquee-group,
  .site-shell .animated,
  .site-shell .overlay-anim::after {
    animation: none !important;
  }

  .site-shell .service-card,
  .site-shell .theme-btn .btn-title,
  .site-shell .home-header .ui-btn {
    transition: none;
  }
}
