.pricing {
    background-color: black;
    color: var(--color-primary-light);
    text-align: center;
    padding: var(--spacing-md);
    overflow: hidden;
}

.pricing-heading {
    font-size: 1.8rem; 
}

.pricing-wrapper {
    position: relative;
    margin-top: var(--spacing-md);
    flex-direction: column;
    align-items: center;
    display: flex;
    gap: var(--spacing-lg);
}

.pricing-card {
    text-align: center;
    border-radius: var(--spacing-sm);
    box-shadow: var(--box-glow);
    width: 100%;
    flex-basis: 100%;
    background-color: rgb(65, 70, 61, 0.8);
    color: var(--color-primary-light);
    padding: var(--spacing-lg) var(--spacing-tiny);
}

.pricing-card:nth-child(2) {
    position: relative;
    background-color: rgb(65, 70, 61, 1);
}

.pricing-card-banner {
    top: -24px;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    background-color: white;
    color: gold;
    font-weight: bold;
    text-align: center;
    padding: var(--spacing-sm) var(--spacing-md);
    border-radius: var(--spacing-lg);
}

.price-heading {
    font-size: 1.2rem;
    color: var(--color-secondary-dark);
}

.pricing-image {
    margin: var(--spacing-tiny) 0 var(--spacing-sm);
}

.pricing-image img {
    margin: 0 auto;
    width: 72px;
    height: 72px;
    
    object-fit: cover;
}

.price {
    font-size: 1.2rem;
    color: var(--color-highlight);
}

.price-interval {
    font-size: 1.2rem;
    color: var(--color-primary-light);
}

.price-cta {
    margin-top: var(--spacing-sm);
    padding: 8px 12px;
    font-size: 1rem;
}

.pricing-includes {
    font-size: 1rem;
    text-align: left;
    margin-top: var(--spacing-md);
}

.pricing-includes li {
    display: flex;
    align-items: center;
}

.pricing-includes li img {
    width: 48px;
    height: 48px;
}

@media screen and (min-width: 800px) {

    .pricing-heading {
        font-size: 3.4rem; 
    }

    .pricing-wrapper {
        flex-direction: row;
        gap: var(--spacing-md);
        align-items: stretch;
        margin-top: var(--spacing-jumbo);
    }
    
    .pricing-card {
        width: 33%;
        flex-basis: 100%;
    }

    .pricing-card:nth-child(2) {
        transform: scale(1.1);
    }
}

@media screen and (min-width: 940px) {

    .pricing {
        padding: var(--spacing-jumbo) var(--spacing-mega);
    }

    .pricing-card {
        padding: var(--spacing-lg) var(--spacing-md);
    }

    .price-heading {
        font-size: 2.4rem;
    }

    .pricing-image {
        margin: var(--spacing-sm) 0 var(--spacing-lg);
    }

    .price {
        font-size: 2.4rem;
    }

    .pricing-includes {
        font-size: 1.125rem;
        margin-top: var(--spacing-tiny);
    }

    .price-cta {
        margin-top: var(--spacing-md);
        padding: 12px 20px;
        font-size: 1.2rem;
    }

}