.packages-page {
    --pkg-navy: #061a3a;
    --pkg-blue: #1769ff;
    --pkg-red: #ef3340;
    padding: 48px;
    border-radius: 20px;
    background: linear-gradient(145deg, #f7f9fc, #fff);
}
.packages-hero { max-width: 780px; margin-bottom: 38px; }
.packages-hero h1 { margin: 12px 0 16px; font-size: clamp(42px, 6vw, 76px); line-height: .98; letter-spacing: -.055em; }
.packages-hero p { color: #667085; font-size: 18px; line-height: 1.7; }
.package-tabs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 32px; }
.package-tab {
    padding: 12px 18px;
    border: 1px solid #dbe2ec;
    border-radius: 999px;
    background: #fff;
    color: var(--pkg-navy);
    font-weight: 800;
    cursor: pointer;
    transition: .25s ease;
}
.package-tab:hover,
.package-tab.is-active { color: #fff; border-color: var(--pkg-navy); background: var(--pkg-navy); transform: translateY(-2px); }
.package-category { display: none; }
.package-category.is-active { display: block; animation: pkgReveal .35s ease both; }
.package-category-head { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-bottom: 22px; }
.package-category-head h2 { margin: 0; font-size: 34px; }
.package-category-head p { max-width: 560px; margin: 0; color: #667085; }
.package-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.package-card {
    position: relative;
    min-height: 485px;
    padding: 28px;
    border: 1px solid #e1e7ef;
    border-radius: 22px;
    background: #fff;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.package-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 5px; background: linear-gradient(90deg, var(--pkg-red), var(--pkg-blue)); }
.package-card:hover { transform: translateY(-7px); border-color: rgba(23,105,255,.28); box-shadow: 0 24px 50px rgba(6,26,58,.12); }
.package-card.is-popular { color: #fff; background: linear-gradient(145deg, #071d40, #0d326a); }
.package-badge { align-self: flex-start; margin-bottom: 18px; padding: 7px 10px; border-radius: 999px; color: #b6202b; background: #fbecee; font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.package-card.is-popular .package-badge { color: #fff; background: var(--pkg-red); }
.package-card h3 { margin: 0 0 10px; font-size: 25px; }
.package-price { display: flex; align-items: baseline; gap: 8px; margin: 10px 0 16px; }
.package-price strong { font-size: 42px; line-height: 1; letter-spacing: -.04em; }
.package-price del { color: #98a2b3; }
.package-summary { min-height: 72px; color: #667085; }
.package-card.is-popular .package-summary { color: rgba(255,255,255,.72); }
.package-features { margin: 20px 0 28px; padding: 20px 0 0; border-top: 1px solid rgba(102,112,133,.18); list-style: none; }
.package-features li { display: flex; gap: 10px; margin: 0 0 11px; line-height: 1.45; }
.package-features i { margin-top: 4px; color: var(--pkg-red); }
.package-card .service-state-btn { margin-top: auto; justify-content: center; }
@keyframes pkgReveal { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@media (max-width: 1100px) { .package-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) {
    .packages-page { padding: 30px 18px; }
    .package-category-head { align-items: flex-start; flex-direction: column; }
    .package-grid { grid-template-columns: 1fr; }
    .package-card { min-height: auto; }
}

