.recommended-packages { margin-top: 1rem; }
.pricing-first-section { padding-top: clamp(2.5rem, 5vw, 5rem); }
.package-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 1px; border: 1px solid var(--line); border-radius: 26px; overflow: hidden; background: var(--line); }
.package-card { position: relative; display: flex; flex-direction: column; min-height: 24rem; padding: clamp(1.1rem, 2.2vw, 1.8rem); overflow: hidden; background: color-mix(in srgb, var(--surface) 94%, var(--paper-warm)); }
.package-wide-3 { grid-column: span 3; }
.package-wide-4 { grid-column: span 4; }
.package-wide-6 { grid-column: span 6; }
.package-wide-12 { grid-column: span 12; }
.package-card:nth-child(even) { background: var(--paper-warm); }
.package-card.is-free { background: rgba(137,41,27,.05); }
.package-card.has-discount { isolation: isolate; background: linear-gradient(155deg, #fff9ed 0%, #fff 48%, #f8e8df 100%); box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--brand-red) 50%, transparent); }
.package-card.has-discount::before { content: ""; position: absolute; z-index: -1; width: 13rem; height: 13rem; inset-inline-end: -5rem; inset-block-start: -6rem; border-radius: 50%; background: radial-gradient(circle, rgba(214,164,86,.46), rgba(214,164,86,0) 70%); }
.package-card.has-discount::after { content: ""; position: absolute; z-index: -1; width: 7rem; height: 20rem; inset: -5rem auto auto -8rem; background: linear-gradient(90deg, transparent, rgba(255,255,255,.86), transparent); transform: rotate(24deg); animation: discount-shine 1.2s .3s ease-out both; }
.package-card-heading { min-height: 4.4rem; }
.package-card h3 { margin: 0; font-size: clamp(1.25rem, 2vw, 1.65rem); }
.package-card ul { display: grid; gap: .65rem; margin: 1.2rem 0; padding: 0; list-style: none; color: var(--ink-muted); }
.package-card li strong { color: var(--ink); font-size: 1.15rem; }
.package-card .button { margin-top: auto; }
.package-price { color: var(--brand-red); font-size: 1.2rem; font-weight: 850; }
.discount-badge { display: inline-flex; margin-top: .45rem; padding: .35rem .72rem; border: 1px solid rgba(255,255,255,.7); border-radius: 999px; color: #fff; background: linear-gradient(110deg, #651811, #812918 62%, #713217); box-shadow: 0 8px 24px rgba(137,41,27,.25); font-size: .82rem; font-weight: 900; transform-origin: center; animation: discount-breathe .9s ease-out 1 both; }
.package-discount-pricing { display: grid; gap: .7rem; margin-block: .5rem 1.2rem; }
.price-before, .price-after { display: grid; gap: .12rem; }
.price-before small, .price-after small { color: var(--muted); font-size: .72rem; font-weight: 800; }
.price-before del { color: #66594f; font-size: .98rem; text-decoration-color: var(--brand-red); text-decoration-thickness: 2px; }
.price-after { padding: .8rem .9rem; color: #fff; background: linear-gradient(120deg, #651c16, var(--brand-red) 58%, #a85a27); border-radius: 16px; box-shadow: 0 12px 28px rgba(101,28,22,.24); }
.price-after small { color: rgba(255,255,255,.92); }
.price-after strong { font-size: clamp(1.15rem, 1.8vw, 1.45rem); }

@keyframes discount-breathe { 50% { transform: scale(1.045); box-shadow: 0 10px 30px rgba(137,41,27,.34); } }
@keyframes discount-shine { 0%, 62% { transform: translateX(0) rotate(24deg); opacity: 0; } 72% { opacity: .85; } 100% { transform: translateX(34rem) rotate(24deg); opacity: 0; } }
.pricing-calculator { margin-top: 1rem; }
.pricing-plan-choice { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; margin: 1.4rem 0; }
.pricing-total { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-block: .4rem 1.4rem; padding: 1.2rem 1.35rem; background: var(--paper-warm); border: 1px solid var(--line); border-radius: 18px; }
.pricing-total > span { font-weight: 800; }
.pricing-steps { padding-bottom: 2rem; }
.process-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; list-style: none; padding: 0; margin: 0; }
.process-list li { display: flex; gap: .85rem; align-items: flex-start; padding: 1.1rem; border-inline-start: 3px solid var(--brand-red); background: rgba(255,255,255,.58); }
.process-list strong { color: var(--brand-red); font-size: 1.25rem; }

@media (max-width: 720px) {
    .pricing-plan-choice, .process-list { grid-template-columns: 1fr; }
    .package-grid { grid-template-columns: 1fr; }
    .package-card { grid-column: 1 / -1; min-height: 0; }
    .pricing-total { align-items: flex-start; flex-direction: column; }
}

@media (min-width: 721px) and (max-width: 1100px) {
    .package-medium-6 { grid-column: span 6; }
    .package-medium-12 { grid-column: span 12; }
    .package-card { min-height: 21rem; }
}

@media (prefers-reduced-motion: reduce) {
    .discount-badge, .package-card.has-discount::after { animation: none; }
}
