.package-catalog {
    padding-top: 1.5rem;
}

/* Pricing 3-Guarantees Trust Banner */
.pricing-guarantee-banner {
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.pricing-guarantee-banner:hover {
    box-shadow: 0 14px 35px -10px rgba(0, 43, 102, 0.08);
}

.package-category-tabs {
    display: flex;
    justify-content: center;
    width: 100%;
    max-width: 820px;
    margin: 0 auto 2rem;
    padding: 6px 8px;
    gap: 10px;
    border: none;
    border-radius: 999px;
    background: transparent;
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.package-category-tabs::-webkit-scrollbar { display: none; }

.package-category-tab {
    flex: 0 0 auto;
    min-height: 44px;
    padding: 10px 22px;
    border: 1px solid #e2e8f0;
    border-radius: 999px;
    color: #475569;
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
    font-family: var(--font-heading);
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}

.package-category-tab:hover {
    color: #03306e;
    border-color: #cbd5e1;
    background: #f8fafc;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.06);
}

.package-category-tab:active {
    transform: scale(0.98);
}

.package-category-tab.is-active {
    color: #ffffff;
    background: #03306e;
    border-color: #03306e;
    box-shadow: 0 8px 20px -4px rgba(3, 48, 110, 0.35);
}

.package-category-tab:focus-visible {
    outline: 3px solid rgba(96, 165, 250, 0.6);
    outline-offset: 2px;
}

.package-category-panel[hidden] { display: none; }

.package-category-heading {
    width: min(100%, 700px);
    margin: 0 auto 2.25rem;
    text-align: center;
}

.package-category-heading h3 {
    color: #0f172a;
    font-family: var(--font-heading);
    font-size: clamp(24px, 3vw, 34px);
    font-weight: 800;
    line-height: 1.12;
}

.package-category-heading p {
    margin-top: 0.65rem;
    color: #64748b;
    font-size: 15px;
    line-height: 1.6;
}

.package-category-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 2rem;
}

.package-category-grid--single {
    grid-template-columns: minmax(0, 760px);
    justify-content: center;
}

.package-calculator-link {
    margin-top: 2.5rem;
    color: #64748b;
    font-size: 14px;
    text-align: center;
}

.package-calculator-link a {
    color: #03306e;
    font-family: var(--font-heading);
    font-weight: 700;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.package-card__renewal { line-height: 1.45; }

.package-card__detail strong {
    color: inherit;
    font-weight: 700;
}

.package-card--featured {
    color: #e2e8f0;
    border-color: #0b4b98 !important;
    background: linear-gradient(155deg, #03306e 0%, #022653 58%, #011d40 100%) !important;
    box-shadow: 0 28px 60px -28px rgba(3, 48, 110, 0.78) !important;
}

.package-card--featured.package-card:hover {
    border-color: #1b62aa !important;
}

.package-card--featured .package-card__featured-badge {
    color: #03306e;
    border: 1px solid #dbeafe;
    background: #ffffff !important;
    box-shadow: 0 14px 28px -16px rgba(2, 6, 23, 0.7);
}

.package-card--featured .package-card__featured-badge svg {
    color: #f04438 !important;
    fill: #fb6a35 !important;
    filter: drop-shadow(0 2px 3px rgba(239, 68, 68, 0.3));
    transform-origin: center bottom;
    animation: packageFlameFlicker 1.15s ease-in-out infinite;
}

.package-card--featured .package-card__tier { color: #93c5fd !important; }

.package-card--featured .package-card__status {
    color: #ffffff !important;
    border-color: rgba(191, 219, 254, 0.32) !important;
    background: rgba(255, 255, 255, 0.1) !important;
}

.package-card--featured .package-card__title,
.package-card--featured .package-card__price {
    color: #ffffff !important;
}

.package-card--featured .package-card__audience { color: #cbd5e1 !important; }

.package-card--featured .package-card__pricing {
    border-color: rgba(191, 219, 254, 0.24) !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

.package-card--featured .package-card__price-note { color: #bfdbfe !important; }
.package-card--featured .package-card__renewal { color: #cbd5e1 !important; }
.package-card--featured .package-card__warranty { border-top-color: rgba(191, 219, 254, 0.22) !important; }
.package-card--featured .package-card__warranty-label { color: #cbd5e1 !important; }
.package-card--featured .package-card__warranty-label svg { color: #34d399 !important; }
.package-card--featured .package-card__warranty-value,
.package-card--featured .package-card__pricing .font-bold.text-slate-800 { color: #ffffff !important; font-weight: 800 !important; }
.package-card--featured .package-card__feature-heading { color: #dbeafe !important; }
.package-card--featured .package-card__features { color: #e2e8f0 !important; }
.package-card--featured .package-card__features svg,
.package-card--featured .package-card__feature-heading svg { color: #34d399 !important; }

.package-card--featured .package-card__cta {
    color: #03306e !important;
    background: #ffffff !important;
    box-shadow: 0 16px 30px -18px rgba(2, 6, 23, 0.8);
}

.package-card--featured .package-card__cta:hover { background: #eff6ff !important; }

.package-card--featured .package-card__details {
    color: #e2e8f0 !important;
    border-color: rgba(191, 219, 254, 0.25) !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

.package-card--featured .package-card__details:hover {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.14) !important;
}

.package-card--featured .package-card__details svg {
    color: #bfdbfe !important;
}

.package-card--dark {
    color: #e5e7eb;
    border-color: #27272a !important;
    background: #000000 !important;
    box-shadow: 0 28px 60px -30px rgba(0, 0, 0, 0.85) !important;
}

.package-card--dark.package-card:hover { border-color: #52525b !important; }
.package-card--dark .package-card__tier { color: #a1a1aa !important; }

.package-card--dark .package-card__status {
    color: #e5e7eb !important;
    border-color: #3f3f46 !important;
    background: #18181b !important;
}

.package-card--dark .package-card__title,
.package-card--dark .package-card__price,
.package-card--dark .package-card__feature-heading {
    color: #ffffff !important;
}

.package-card--dark .package-card__audience,
.package-card--dark .package-card__renewal {
    color: #bfc5ce !important;
}

.package-card--dark .package-card__pricing {
    border-color: #303036 !important;
    background: #111113 !important;
}

.package-card--dark .package-card__price-note { color: #bfdbfe !important; }
.package-card--dark .package-card__warranty { border-top-color: #27272a !important; }
.package-card--dark .package-card__warranty-label { color: #a1a1aa !important; }
.package-card--dark .package-card__warranty-label svg { color: #34d399 !important; }
.package-card--dark .package-card__warranty-value,
.package-card--dark .package-card__pricing .font-bold.text-slate-800 { color: #ffffff !important; font-weight: 800 !important; }
.package-card--dark .package-card__features { color: #e2e8f0 !important; }
.package-card--dark .package-card__features svg,
.package-card--dark .package-card__feature-heading svg { color: #34d399 !important; }

.package-card--dark .package-card__cta {
    color: #000000 !important;
    background: #ffffff !important;
    box-shadow: 0 16px 30px -18px rgba(255, 255, 255, 0.45);
}

.package-card--dark .package-card__cta:hover { background: #f4f4f5 !important; }

.package-card--dark .package-card__details {
    color: #e5e7eb !important;
    border-color: #3f3f46 !important;
    background: #18181b !important;
}

.package-card--dark .package-card__details:hover {
    color: #ffffff !important;
    background: #27272a !important;
}

.package-card--dark .package-card__details svg { color: #d4d4d8 !important; }

@keyframes packageFlameFlicker {
    0%, 100% { transform: translateY(0) rotate(-3deg) scale(0.96, 1); }
    45% { transform: translateY(-2px) rotate(3deg) scale(1.08, 1.13); }
    70% { transform: translateY(-1px) rotate(-1deg) scale(1.02, 1.06); }
}

@media (max-width: 639px) {
    .package-catalog { padding-top: 0.75rem; }

    .package-category-tabs {
        justify-content: flex-start;
        margin-left: -1rem;
        margin-right: -1rem;
        width: calc(100% + 2rem);
        max-width: none;
        padding: 6px 2.5rem 6px 1rem;
        gap: 8px;
        margin-bottom: 1.5rem;
        border-radius: 0 999px 999px 0;
        scroll-padding: 0 1rem;
        -webkit-mask-image: linear-gradient(to right, #000 0%, #000 calc(100% - 40px), transparent 100%);
        mask-image: linear-gradient(to right, #000 0%, #000 calc(100% - 40px), transparent 100%);
    }

    .package-category-tab {
        min-height: 38px;
        padding: 8px 16px;
        border-radius: 999px;
        font-size: 12.5px;
    }

    .package-category-heading { margin-bottom: 1.75rem; }
    .package-category-heading h3 { font-size: 24px; }
    .package-category-heading p { font-size: 14px; }

    .package-card--featured {
        background: #03306e !important;
    }
}

@media (max-width: 1023px) {
    .package-category-grid { grid-template-columns: minmax(0, 1fr); }
    .package-category-grid .package-card { width: min(100%, 680px); margin-inline: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .package-card--featured .package-card__featured-badge svg { animation: none; }
}
