.pricing_page
{
    padding-top:20px;
}

.pricing_cards
{
    max-width:1200px;
    margin:0 auto 60px auto;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    column-gap:24px;
    row-gap:100px;
    align-items:stretch;
}

.pricing_card
{
    position:relative;
    background:#fafafa;
    border:1px solid #454545;
    box-shadow:0 8px 22px rgba(0,0,0,0.12);
    padding:28px 26px 26px 26px;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    height:100%;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.pricing_card:hover
{
    transform:translateY(-4px);
    box-shadow:0 16px 36px rgba(0,0,0,0.22);
    border-color:#C6A25A;
}

.pricing_card_featured
{
    border:2px solid #C6A25A;
    background:#fffdf8;
}

.pricing_card_bespoke
{
    background:#f7f7f7;
    border:2px dashed #C6A25A;
}

.pricing_image
{
    margin:-28px -26px 18px -26px;
    overflow:hidden;
    align-self:stretch;
    width:calc(100% + 52px);
}

.pricing_image img
{
    width:100%;
    height:220px;
    object-fit:cover;
    display:block;
}

.pricing_badge
{
    position:absolute;
    top:-12px;
    left:50%;
    transform:translateX(-50%);
    padding:5px 12px;
    background:#C6A25A;
    color:#FFF;
    font-size:12px;
    letter-spacing:.6px;
    text-transform:uppercase;
    white-space:nowrap;
}

.pricing_badge_custom
{
    background:#111;
    color:#C6A25A;
    border:1px solid #C6A25A;
}

.pricing_card_topline
{
    width:60px;
    height:3px;
    background:#C6A25A;
    margin:0 auto 18px auto;
}

.pricing_card h3
{
    margin:0 0 12px 0;
    font-family:'Playfair Display', serif;
    font-size:165%;
    font-weight:500;
    line-height:1.3;
    color:#454545;
    text-align:center;
    width:100%;
}

.pricing_price
{
    margin:0 0 18px 0;
    font-size:170%;
    font-weight:600;
    letter-spacing:.5px;
    color:#000;
    text-align:center;
    width:100%;
}

.pricing_price_custom
{
    font-size:140%;
    font-style:italic;
    color:#333;
}

.pricing_features
{
    width:100%;
    margin:0 0 18px 0;
    padding:0;
    flex-grow:1;
    text-align:center;
    display:flex;
    justify-content:center;
}

.pricing_features ul
{
    list-style:none;
    margin:0;
    padding:0;
    width:100%;
    max-width:280px;
    text-align:center;
}

.pricing_features li
{
    list-style:none;
    margin:0 0 10px 0;
    padding:0;
    font-size:94%;
    line-height:1.8;
    color:#333;
    text-align:center;
}

.pricing_features li:last-child
{
    margin-bottom:0;
}

.pricing_note
{
    margin:0 0 22px 0;
    font-size:90%;
    line-height:1.7;
    color:#666;
    font-style:italic;
    min-height:48px;
    text-align:center;
    width:100%;
}

.pricing_button_wrap
{
    margin-top:auto;
    width:100%;
    text-align:center;
}

.pricing_button
{
    display:inline-block;
    padding:12px 22px;
    background:#000;
    color:#C6A25A;
    text-decoration:none;
    border:1px solid #C6A25A;
    transition:all .25s ease;
}

.pricing_button:hover
{
    background:#111;
    color:#FFF;
    border-color:#FFF;
}

/* LUXURY FADE EFFECT */

.fade_in
{
    opacity:0;
    transform:translateY(12px);
    transition:opacity .6s ease, transform .6s ease;
}

.fade_in.visible
{
    opacity:1;
    transform:translateY(0);
}

/* STAGGER CASCADE */

.pricing_cards .fade_in:nth-child(1){transition-delay:.05s;}
.pricing_cards .fade_in:nth-child(2){transition-delay:.15s;}
.pricing_cards .fade_in:nth-child(3){transition-delay:.25s;}
.pricing_cards .fade_in:nth-child(4){transition-delay:.35s;}
.pricing_cards .fade_in:nth-child(5){transition-delay:.45s;}
.pricing_cards .fade_in:nth-child(6){transition-delay:.55s;}
.pricing_cards .fade_in:nth-child(7){transition-delay:.65s;}
.pricing_cards .fade_in:nth-child(8){transition-delay:.75s;}

@media (max-width:1000px)
{

    .pricing_cards
    {
        grid-template-columns:repeat(2,1fr);
    }
}

@media (max-width:700px)
{
    .pricing_cards
    {
        grid-template-columns:1fr;
    }

    .pricing_features ul
    {
        max-width:100%;
    }
}