
  .skeleton-image.svelte-1b5hlrj {
    position: relative;
    width: 100%;
    background: linear-gradient(
      90deg,
      var(--color-void-highlight) 25%,
      var(--color-void-surface) 50%,
      var(--color-void-highlight) 75%
    );
    background-size: 200% 100%;
    animation: svelte-1b5hlrj-skeleton-shimmer 1.5s cubic-bezier(0.22, 1, 0.36, 1) infinite;
    border-radius: 4px;
  }

  @keyframes svelte-1b5hlrj-skeleton-shimmer {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
  }

  .skeleton-watermark.svelte-1b5hlrj {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--font-mystic, 'Cinzel', serif);
    color: var(--color-gold, #C9A84C);
    opacity: 0.08;
    font-size: 2.5rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    pointer-events: none;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }

  .skeleton-accent-line.svelte-1b5hlrj {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(
      90deg,
      transparent 0%,
      var(--color-gold, #C9A84C) 50%,
      transparent 100%
    );
    opacity: 0.3;
  }

	/* Hover lift effect using domain color */
	.void-card--interactive:hover {
		transform: translateY(-4px);
	}

	/* Override void-card--interactive border color to use domain color */
	.group\/article:hover.void-card--interactive {
		border-color: color-mix(in srgb, var(--card-domain-color) 36%, var(--color-border));
		box-shadow: 0 12px 34px -24px color-mix(in srgb, var(--card-domain-color) 40%, transparent);
	}

	/* Title hover color shift to domain color */
	.group:hover .article-title {
		color: color-mix(in srgb, var(--card-domain-color) 85%, var(--color-text-primary));
	}

	/* Reduced motion support */
	@media (prefers-reduced-motion: reduce) {
		.article-title.svelte-nsahtk {
			transition: none;
		}
	}

	/* Domain-colored accent line */
	.accent-line.svelte-3hzwa3 {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 3px;
		background-color: var(--card-domain-color);
		opacity: 0.6;
		transform: scaleX(0.4);
		transform-origin: left center;
		transition: transform 300ms var(--ease-out-expo), opacity 300ms ease;
		z-index: 20;
	}

	.service-card.svelte-3hzwa3:hover .accent-line:where(.svelte-3hzwa3) {
		transform: scaleX(1);
		opacity: 1;
	}

	/* Hover lift effect — desktop only, enhance void-card--interactive */
	@media (hover: hover) and (prefers-reduced-motion: no-preference) {
		.service-card.svelte-3hzwa3 {
			transition: transform 300ms var(--ease-out-expo),
			            box-shadow 300ms var(--ease-out-expo),
			            border-color 300ms ease;
		}

		.service-card.svelte-3hzwa3:hover {
			transform: translateY(-4px);
			box-shadow: 0 12px 24px -8px rgba(0, 0, 0, 0.3);
		}
	}

	/* Respect reduced motion */
	@media (prefers-reduced-motion: reduce) {
		.service-card.svelte-3hzwa3,
		.accent-line.svelte-3hzwa3,
		.featured-badge.svelte-3hzwa3 {
			transition: none !important;
			animation: none !important;
		}

		.service-card.svelte-3hzwa3:hover {
			transform: none;
		}

		.accent-line.svelte-3hzwa3 {
			transform: scaleX(0.4);
		}
	}

	/* Featured badge */
	.featured-badge.svelte-3hzwa3 {
		position: absolute;
		top: 12px;
		right: 12px;
		z-index: 30;
		background: linear-gradient(135deg, var(--color-gold) 0%, var(--color-gold-glow) 100%);
		color: var(--color-void);
		font-size: 0.6875rem;
		font-weight: 600;
		letter-spacing: 0.025em;
		padding: 0.125rem 0.5rem;
		border-radius: var(--radius-full);
		text-transform: uppercase;
		animation: svelte-3hzwa3-badge-pulse 3s ease-in-out infinite;
	}

	@keyframes svelte-3hzwa3-badge-pulse {
		0%, 100% {
			opacity: 1;
			box-shadow: 0 0 0 0 color-mix(in srgb, var(--color-gold) 40%, transparent);
		}
		50% {
			opacity: 0.85;
			box-shadow: 0 0 0 4px color-mix(in srgb, var(--color-gold) 0%, transparent);
		}
	}

	@media (prefers-reduced-motion: reduce) {
		.featured-badge.svelte-3hzwa3 {
			animation: none;
		}
	}

	/* Feature list from tags */
	.feature-list.svelte-3hzwa3 {
		display: flex;
		flex-direction: column;
		gap: 4px;
		margin-bottom: 0;
	}

	.feature-item.svelte-3hzwa3 {
		display: flex;
		align-items: center;
		gap: 6px;
		font-size: 0.75rem;
		color: var(--color-text-secondary);
		line-height: 1.4;
	}

	.feature-check.svelte-3hzwa3 {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 14px;
		height: 14px;
		flex-shrink: 0;
		color: var(--card-domain-color);
	}

	/* Price display */
	.price-group.svelte-3hzwa3 {
		display: flex;
		align-items: center;
		gap: 6px;
	}

	.current-price.svelte-3hzwa3 {
		font-family: var(--font-sans);
		font-size: 1.25rem;
		font-weight: 700;
		line-height: 1;
	}

	.original-price.svelte-3hzwa3 {
		font-size: 0.75rem;
		color: var(--color-text-tertiary);
		text-decoration: line-through;
		line-height: 1;
	}

	.savings-badge.svelte-3hzwa3 {
		font-size: 0.625rem;
		font-weight: 600;
		color: var(--color-status-success);
		background: color-mix(in srgb, var(--color-status-success) 12%, transparent);
		padding: 1px 6px;
		border-radius: var(--radius-full);
		letter-spacing: 0.025em;
	}

	/* Line clamp utility */
	.line-clamp-2.svelte-3hzwa3 {
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
		line-clamp: 2;
	}

	/* Domain-colored accent line */
	.accent-line.svelte-115whzb {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 3px;
		background-color: var(--card-domain-color);
		opacity: 0.6;
		transform: scaleX(0.4);
		transform-origin: left center;
		transition: transform 300ms var(--ease-out-expo), opacity 300ms ease;
	}

	.product-card.svelte-115whzb:hover .accent-line:where(.svelte-115whzb) {
		transform: scaleX(1);
		opacity: 1;
	}

	/* Hover lift effect — desktop only */
	@media (hover: hover) and (prefers-reduced-motion: no-preference) {
		.product-card.svelte-115whzb {
			transition: transform 300ms var(--ease-out-expo),
			            box-shadow 300ms var(--ease-out-expo),
			            border-color 300ms ease;
		}

		.product-card.svelte-115whzb:hover {
			transform: translateY(-4px);
			box-shadow: 0 12px 24px -8px rgba(0, 0, 0, 0.3);
		}
	}

	/* Respect reduced motion */
	@media (prefers-reduced-motion: reduce) {
		.product-card.svelte-115whzb,
		.accent-line.svelte-115whzb,
		.featured-indicator.svelte-115whzb {
			transition: none !important;
			animation: none !important;
		}

		.product-card.svelte-115whzb:hover {
			transform: none;
		}

		.accent-line.svelte-115whzb {
			transform: scaleX(0.4);
		}
	}

	/* Featured indicator — terminal style */
	.featured-indicator.svelte-115whzb {
		position: absolute;
		top: 10px;
		right: 10px;
		z-index: 10;
		display: flex;
		align-items: center;
		gap: 4px;
		background: var(--color-gold);
		color: var(--color-void);
		font-family: var(--font-mono);
		font-size: 0.625rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		padding: 3px 8px;
		border-radius: var(--radius-sm);
		text-transform: uppercase;
	}

	.featured-marker.svelte-115whzb {
		font-size: 0.5rem;
		line-height: 1;
	}

	@media (prefers-reduced-motion: reduce) {
		.featured-indicator.svelte-115whzb {
			transition: none !important;
		}
	}

	/* Feature list from tags */
	.feature-list.svelte-115whzb {
		display: flex;
		flex-direction: column;
		gap: 4px;
		margin-bottom: 0;
	}

	.feature-item.svelte-115whzb {
		display: flex;
		align-items: center;
		gap: 6px;
		font-size: 0.75rem;
		color: var(--color-text-secondary);
		line-height: 1.4;
	}

	.feature-check.svelte-115whzb {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 14px;
		height: 14px;
		flex-shrink: 0;
		color: var(--card-domain-color);
	}

	/* Price display */
	.price-group.svelte-115whzb {
		display: flex;
		align-items: center;
		gap: 6px;
	}

	.current-price.svelte-115whzb {
		font-family: var(--font-sans);
		font-size: 1.25rem;
		font-weight: 700;
		line-height: 1;
	}

	.original-price.svelte-115whzb {
		font-size: 0.75rem;
		color: var(--color-text-tertiary);
		text-decoration: line-through;
		line-height: 1;
	}

	.savings-badge.svelte-115whzb {
		font-size: 0.625rem;
		font-weight: 600;
		color: var(--color-status-success);
		background: color-mix(in srgb, var(--color-status-success) 12%, transparent);
		padding: 1px 6px;
		border-radius: var(--radius-sm);
		letter-spacing: 0.025em;
	}

	/* Line clamp utility */
	.line-clamp-2.svelte-115whzb {
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
		line-clamp: 2;
	}

  .grid-stagger-item {
    opacity: 0;
    transform: translateY(12px);
    animation: svelte-1w7h623-gridStaggerIn var(--duration-slow) cubic-bezier(0.16, 1, 0.3, 1) forwards;
  }

  .empty-state-fade {
    opacity: 0;
    animation: svelte-1w7h623-emptyFadeIn var(--duration-normal) ease-out forwards;
  }

  @keyframes svelte-1w7h623-gridStaggerIn {
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @keyframes svelte-1w7h623-emptyFadeIn {
    to {
      opacity: 1;
    }
  }
