/************************************************
CARD
************************************************/

.plan-card{

    position:relative;

    display:flex;

    flex-direction:column;

    background:#fff;

    border-radius:34px;

    overflow:hidden;

    border:1px solid var(--sd-border);

    transition:.35s;

    box-shadow:

        0 12px 40px rgba(15,23,42,.05);

}

.plan-card:hover{

    transform:translateY(-12px);

    box-shadow:

        0 35px 90px rgba(15,23,42,.12);

}

/************************************************
POPULAR
************************************************/

.plan-card.popular{

    border:2px solid var(--sd-primary);

    transform:scale(1.04);

}

.plan-card.popular:hover{

    transform:scale(1.04) translateY(-10px);

}

/************************************************
RIBBON
************************************************/

.plan-ribbon{

    position:absolute;

    top:22px;

    right:-40px;

    width:180px;

    text-align:center;

    transform:rotate(40deg);

    background:

        linear-gradient(
            180deg,
            #f4c430,
            #d8a000
        );

    color:#fff;

    font-size:12px;

    font-weight:800;

    padding:8px;

    letter-spacing:.08em;

    box-shadow:

        0 10px 30px rgba(0,0,0,.18);

}

/************************************************
HEADER
************************************************/

.plan-header{

    padding:42px;

    text-align:center;

}

.plan-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:72px;

    height:72px;

    border-radius:20px;

    margin-bottom:20px;

    font-size:28px;

    color:#fff;

}

.plan-badge.none{

    background:#8b95a7;

}

.plan-badge.silver{

    background:

        linear-gradient(
            180deg,
            #9da8b7,
            #6d7788
        );

}

.plan-badge.gold{

    background:

        linear-gradient(
            180deg,
            #f3c623,
            #cf9800
        );

}

/************************************************
NAME
************************************************/

.plan-name{

    font-size:34px;

    font-weight:900;

    margin-bottom:10px;

}

/************************************************
DESCRIPTION
************************************************/

.plan-description{

    color:var(--sd-muted);

    line-height:1.7;

    min-height:60px;

}

/************************************************
PRICE
************************************************/

.plan-price{

    text-align:center;

    padding-bottom:36px;

}

.plan-price-value{

    font-size:62px;

    font-weight:900;

    color:var(--sd-primary);

    line-height:1;

}

.plan-price-value small{

    font-size:18px;

    font-weight:600;

    color:var(--sd-muted);

}

.plan-price-duration{

    margin-top:12px;

    color:var(--sd-muted);

    font-weight:600;

}

/************************************************
LIMITS
************************************************/

.plan-limits{

    padding:0 36px 28px;

}

.plan-limit{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:13px 0;

    border-bottom:1px dashed #edf2f7;

}

.plan-limit:last-child{

    border-bottom:none;

}

.plan-limit-label{

    color:var(--sd-muted);

}

.plan-limit-value{

    font-weight:800;

    color:var(--sd-primary);

}

/************************************************
FEATURES
************************************************/

.plan-features{

    padding:0 36px 36px;

}

.plan-feature{

    display:flex;

    align-items:center;

    gap:14px;

    padding:12px 0;

}

.plan-feature i{

    font-size:18px;

}

.plan-feature.enabled i{

    color:#18b15f;

}

.plan-feature.disabled{

    opacity:.45;

}

.plan-feature.disabled i{

    color:#c7ced8;

}

/************************************************
CTA
************************************************/

.plan-footer{

    margin-top:auto;

    padding:36px;

}

.plan-footer .btn{

    width:100%;

    padding:16px;

    font-size:17px;

    border-radius:16px;

}

.plan-card.popular .btn{

    background:

        linear-gradient(
            180deg,
            var(--sd-primary),
            var(--sd-primary-dark)
        );

    border:none;

    color:#fff;

}

.plan-card:not(.popular) .btn{

    border:2px solid var(--sd-primary);

    color:var(--sd-primary);

    background:#fff;

}

.plan-card:not(.popular) .btn:hover{

    background:var(--sd-primary);

    color:#fff;

}

/************************************************
HOVER BORDER
************************************************/

.plan-card::after{

    content:"";

    position:absolute;

    inset:0;

    border-radius:34px;

    border:2px solid transparent;

    transition:.30s;

    pointer-events:none;

}

.plan-card:hover::after{

    border-color:rgba(13,79,69,.18);

}
