.card[data-astro-cid-di2nlc57]{border-radius:var(--radius-lg);background:#fff;border:1px solid var(--color-border-light);overflow:hidden;transition:all var(--transition-base)}.card[data-astro-cid-di2nlc57]:hover{border-color:var(--color-border);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card__link[data-astro-cid-di2nlc57]{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none;position:relative}.card__image-wrap[data-astro-cid-di2nlc57]{aspect-ratio:16/9;overflow:hidden;background:var(--color-paper-alt)}.card__image[data-astro-cid-di2nlc57]{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.card[data-astro-cid-di2nlc57]:hover .card__image[data-astro-cid-di2nlc57]{transform:scale(1.03)}.card__body[data-astro-cid-di2nlc57]{padding:var(--space-xl);flex:1;display:flex;flex-direction:column}.card__category[data-astro-cid-di2nlc57]{display:inline-block;font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);margin-bottom:var(--space-sm)}.card__title[data-astro-cid-di2nlc57]{font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--leading-snug);margin-bottom:var(--space-sm);transition:color var(--transition-fast)}.card[data-astro-cid-di2nlc57]:hover .card__title[data-astro-cid-di2nlc57]{color:var(--color-accent)}.card__desc[data-astro-cid-di2nlc57]{font-size:var(--text-sm);color:var(--color-ink-muted);line-height:var(--leading-normal);flex:1;margin-bottom:var(--space-md);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card__meta[data-astro-cid-di2nlc57]{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--text-xs);color:var(--color-ink-subtle)}.card__meta-dot[data-astro-cid-di2nlc57]{font-size:.6em}.card__arrow[data-astro-cid-di2nlc57]{position:absolute;bottom:var(--space-xl);right:var(--space-xl);font-size:var(--text-lg);color:var(--color-ink-subtle);transition:all var(--transition-fast);opacity:0;transform:translate(-8px)}.card[data-astro-cid-di2nlc57]:hover .card__arrow[data-astro-cid-di2nlc57]{opacity:1;transform:translate(0);color:var(--color-accent)}.card--featured[data-astro-cid-di2nlc57]{grid-column:span 2}.card--featured[data-astro-cid-di2nlc57] .card__link[data-astro-cid-di2nlc57]{flex-direction:row}.card--featured[data-astro-cid-di2nlc57] .card__image-wrap[data-astro-cid-di2nlc57]{width:45%;aspect-ratio:auto;flex-shrink:0}.card--featured[data-astro-cid-di2nlc57] .card__title[data-astro-cid-di2nlc57]{font-size:var(--text-2xl)}@media(max-width:768px){.card--featured[data-astro-cid-di2nlc57]{grid-column:span 1}.card--featured[data-astro-cid-di2nlc57] .card__link[data-astro-cid-di2nlc57]{flex-direction:column}.card--featured[data-astro-cid-di2nlc57] .card__image-wrap[data-astro-cid-di2nlc57]{width:100%;aspect-ratio:16/9}}.promo-section[data-astro-cid-v2a43d5b]{padding:var(--space-4xl) 0;background:linear-gradient(135deg,#faf5ff,#f5f3ff,#ede9fe);border-top:1px solid #e9d5ff;border-bottom:1px solid #e9d5ff}.promo-section__container[data-astro-cid-v2a43d5b]{max-width:var(--max-width, 1200px);margin:0 auto;padding:0 var(--space-lg);display:grid;grid-template-columns:1fr 320px;gap:var(--space-3xl);align-items:center}.promo-section__badge[data-astro-cid-v2a43d5b]{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#7c3aed;background:#fff;padding:6px 12px;border-radius:50px;border:1px solid #e9d5ff;margin-bottom:var(--space-lg);font-family:Roboto,DM Sans,system-ui,sans-serif}.promo-section__title[data-astro-cid-v2a43d5b]{font-family:var(--font-display);font-size:var(--text-3xl);line-height:1.2;color:#1f2937;margin-bottom:var(--space-md);max-width:20ch}.promo-section__title[data-astro-cid-v2a43d5b] em[data-astro-cid-v2a43d5b]{font-style:normal;color:#7c3aed}.promo-section__desc[data-astro-cid-v2a43d5b]{font-size:var(--text-base);line-height:1.7;color:#4b5563;max-width:50ch;margin-bottom:var(--space-xl)}.promo-section__features[data-astro-cid-v2a43d5b]{list-style:none;padding:0;margin:0 0 var(--space-xl) 0;display:flex;flex-wrap:wrap;gap:var(--space-sm) var(--space-xl)}.promo-section__feature[data-astro-cid-v2a43d5b]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:#374151;font-family:Roboto,DM Sans,system-ui,sans-serif}.promo-section__check[data-astro-cid-v2a43d5b]{flex-shrink:0}.promo-section__cta[data-astro-cid-v2a43d5b]{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;font-size:15px;font-weight:600;color:#fff;background:linear-gradient(135deg,#7c3aed,#6d28d9);border-radius:10px;text-decoration:none;font-family:Roboto,DM Sans,system-ui,sans-serif;transition:all .2s ease;box-shadow:0 4px 14px #7c3aed40}.promo-section__cta[data-astro-cid-v2a43d5b]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #7c3aed59}.promo-section__cta[data-astro-cid-v2a43d5b] svg[data-astro-cid-v2a43d5b]{transition:transform .2s ease}.promo-section__cta[data-astro-cid-v2a43d5b]:hover svg[data-astro-cid-v2a43d5b]{transform:translate(3px)}.promo-section__visual[data-astro-cid-v2a43d5b]{display:flex;justify-content:center}.promo-section__price-card[data-astro-cid-v2a43d5b]{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:24px;width:100%;max-width:280px;box-shadow:0 8px 30px #7c3aed14;font-family:Roboto,DM Sans,system-ui,sans-serif}.promo-section__price-header[data-astro-cid-v2a43d5b]{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #f3f4f6}.promo-section__logo[data-astro-cid-v2a43d5b]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:linear-gradient(135deg,#7c3aed,#6d28d9);border-radius:12px;color:#fff}.promo-section__price-label[data-astro-cid-v2a43d5b]{font-size:16px;font-weight:700;color:#111827}.promo-section__price-body[data-astro-cid-v2a43d5b]{margin-bottom:16px}.promo-section__price-from[data-astro-cid-v2a43d5b]{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;display:block;margin-bottom:4px}.promo-section__price-row[data-astro-cid-v2a43d5b]{display:flex;align-items:baseline;gap:6px}.promo-section__price-value[data-astro-cid-v2a43d5b]{font-size:36px;font-weight:700;color:#7c3aed;letter-spacing:-.02em;line-height:1}.promo-section__price-unit[data-astro-cid-v2a43d5b]{font-size:13px;color:#6b7280}.promo-section__price-footer[data-astro-cid-v2a43d5b]{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#22c55e;font-weight:500}.promo-section--compact[data-astro-cid-v2a43d5b]{padding:var(--space-2xl) 0}.promo-section--compact[data-astro-cid-v2a43d5b] .promo-section__container[data-astro-cid-v2a43d5b]{grid-template-columns:1fr auto;gap:var(--space-2xl)}.promo-section--compact[data-astro-cid-v2a43d5b] .promo-section__title[data-astro-cid-v2a43d5b]{font-size:var(--text-2xl)}.promo-section--compact[data-astro-cid-v2a43d5b] .promo-section__desc[data-astro-cid-v2a43d5b]{font-size:var(--text-sm);margin-bottom:var(--space-lg)}.promo-section--compact[data-astro-cid-v2a43d5b] .promo-section__features[data-astro-cid-v2a43d5b]{margin-bottom:var(--space-lg)}.promo-section--compact[data-astro-cid-v2a43d5b] .promo-section__price-card[data-astro-cid-v2a43d5b]{max-width:240px;padding:20px}.promo-section--compact[data-astro-cid-v2a43d5b] .promo-section__price-value[data-astro-cid-v2a43d5b]{font-size:28px}@media(max-width:900px){.promo-section__container[data-astro-cid-v2a43d5b]{grid-template-columns:1fr;text-align:center}.promo-section__title[data-astro-cid-v2a43d5b]{max-width:none}.promo-section__desc[data-astro-cid-v2a43d5b]{max-width:none;margin-inline:auto}.promo-section__features[data-astro-cid-v2a43d5b]{justify-content:center}.promo-section__cta[data-astro-cid-v2a43d5b]{width:100%;justify-content:center;max-width:320px}.promo-section__visual[data-astro-cid-v2a43d5b]{order:-1}.promo-section__price-card[data-astro-cid-v2a43d5b]{max-width:100%}}@media(max-width:480px){.promo-section[data-astro-cid-v2a43d5b]{padding:var(--space-2xl) 0}.promo-section__features[data-astro-cid-v2a43d5b]{flex-direction:column;align-items:center;gap:var(--space-sm)}}
