#precos.shell {
    width: min(1280px, calc(100% - 48px));
}

#precos .section-heading {
    max-width: 900px;
}

#precos .section-heading-row {
    align-items: flex-end;
}

.pricing-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 24px;
    align-items: stretch;
    width: 100%;
}

.price-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: 100%;
    padding: 32px;
}

.price-card > p {
    min-height: 4.65em;
}

.price-card .price-value,
.price-card .price-custom {
    margin-top: auto;
}

.price-card .button {
    width: 100%;
    margin-top: 18px;
    text-align: center;
}

.price-card .price-annual {
    display: block;
    min-height: 1.55em;
    margin-top: 6px;
    color: var(--muted);
}

.price-card .plan-list {
    margin-top: 24px;
}

@media (max-width: 1150px) {
    .pricing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .site-header {
        gap: 12px;
    }

    .site-header .brand {
        min-width: 0;
        flex: 1 1 auto;
    }

    .site-header .brand-logo-full {
        width: min(170px, 100%);
    }

    .site-header .header-actions {
        flex: 0 0 auto;
        gap: 10px;
    }

    .site-header .menu-button {
        flex: 0 0 auto;
    }

    #precos.shell {
        width: calc(100% - 32px);
    }

    .pricing-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .price-card {
        padding: 26px;
    }

    .price-card > p {
        min-height: 0;
    }
}
