/* ── Pricing Page ─────────────────────────────────────── */

/* Hero banner */
.pricing-banner {
    padding: 160px 0 80px;
    position: relative;
}
.pricing-banner h6 {
    color: #c44953;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 4px;
    margin-bottom: 15px;
}
.pricing-banner h1 {
    color: #fff;
    font-size: 56px;
    font-weight: 700;
    line-height: 1.1;
}

/* Plan subtitle */
.price .item .plan-subtitle {
    font-size: 14px;
    color: #aaa;
    margin-bottom: 20px;
    padding-top: 8px;
}

/* Price block (stacked layout) */
.price .item .price-block {
    margin-bottom: 4px;
}

/* Price note (small text below price) */
.price .item .price-note {
    display: block;
    font-size: 12px;
    color: #aaa;
    margin-top: 6px;
    line-height: 1.4;
}

/* Features always below price */
.price .item .feat {
    margin-top: 4px;
}

/* Featured plan — accent border */
.price .item.featured-plan {
    border: 1px solid rgba(196, 73, 83, 0.5);
    position: relative;
}
.price .item.featured-plan:after {
    background: linear-gradient(120deg, rgba(196, 73, 83, 0.15), rgba(196, 73, 83, 0.03));
}

/* Featured badge */
.price .item .featured-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    padding: 4px 14px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #fff;
    background-color: #c44953;
    border-radius: 20px;
    z-index: 2;
}

/* Ensure .type label stays on right when badge is present */
.price .item.featured-plan .type {
    right: 15px;
    left: auto;
}

/* Equal-height cards */
.price .row.justify-content-center {
    align-items: stretch;
}
.price .row.justify-content-center > [class*="col-"] {
    display: flex;
}
.price .item {
    display: flex;
    flex-direction: column;
    width: 100%;
}
.price .item .btn-wrap {
    margin-top: auto;
    position: relative;
    z-index: 2;
}

/* Intro section */
.pricing-intro p {
    color: #aaa;
    font-size: 16px;
    line-height: 1.75em;
    margin-bottom: 16px;
}

/* CTA section */
.pricing-cta {
    padding: 120px 0;
    position: relative;
}
.pricing-cta h1 {
    color: #fff;
    font-size: 42px;
    font-weight: 700;
    margin-bottom: 20px;
}
.pricing-cta p {
    color: #ddd;
    font-size: 16px;
    margin-bottom: 0;
}

@media screen and (max-width: 768px) {
    .pricing-banner h1 { font-size: 36px; }
    .pricing-cta h1 { font-size: 28px; }
}
