/*==========================
PRICING HERO
==========================*/

.pricing-hero{

    padding:110px 0;

    background:linear-gradient(135deg,#EFF6FF,#FFFFFF);

    text-align:center;

}

.pricing-badge{

    display:inline-block;

    padding:12px 24px;

    background:#DBEAFE;

    color:#2563EB;

    border-radius:30px;

    font-weight:600;

    margin-bottom:25px;

}

.pricing-hero h1{

    font-size:58px;

    color:#0F172A;

    max-width:900px;

    margin:auto;

    line-height:1.2;

    margin-bottom:25px;

}

.pricing-hero p{

    max-width:750px;

    margin:auto;

    font-size:19px;

    color:#64748B;

    line-height:1.9;

    margin-bottom:40px;

}

.pricing-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

}

.pricing-primary{

    padding:16px 34px;

    background:#2563EB;

    color:#fff;

    text-decoration:none;

    border-radius:12px;

    font-weight:600;

}

.pricing-secondary{

    padding:16px 34px;

    border:2px solid #2563EB;

    color:#2563EB;

    text-decoration:none;

    border-radius:12px;

    font-weight:600;

}

.pricing-primary:hover{

    background:#1D4ED8;

}

.pricing-secondary:hover{

    background:#2563EB;

    color:#fff;

}

@media(max-width:768px){

.pricing-hero{

    padding:80px 0;

}

.pricing-hero h1{

    font-size:36px;

}

.pricing-hero p{

    font-size:16px;

}

.pricing-buttons{

    flex-direction:column;

    align-items:center;

}

.pricing-primary,

.pricing-secondary{

    width:240px;

    text-align:center;

}

}

/*==========================
PRICING PLANS
==========================*/

.pricing-plans{

    padding:100px 0;

    background:#FFFFFF;

}

.plans-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}

.plan-card{

    background:#fff;

    border:1px solid #E5E7EB;

    border-radius:22px;

    padding:45px 35px;

    position:relative;

    transition:.35s;

    box-shadow:0 15px 35px rgba(0,0,0,.06);

}

.plan-card:hover{

    transform:translateY(-12px);

    box-shadow:0 25px 50px rgba(37,99,235,.18);

}

.popular{

    border:2px solid #2563EB;

}

.popular-tag{

    position:absolute;

    top:-15px;

    left:50%;

    transform:translateX(-50%);

    background:#2563EB;

    color:#fff;

    padding:8px 22px;

    border-radius:30px;

    font-size:14px;

    font-weight:600;

}

.plan-header{

    text-align:center;

    margin-bottom:35px;

}

.plan-header h3{

    font-size:30px;

    color:#0F172A;

    margin-bottom:15px;

}

.price{

    font-size:52px;

    color:#2563EB;

    font-weight:700;

}

.price span{

    display:block;

    font-size:16px;

    color:#64748B;

    font-weight:500;

}

.plan-card ul{

    list-style:none;

    margin-bottom:35px;

}

.plan-card ul li{

    padding:12px 0;

    color:#475569;

    border-bottom:1px solid #F1F5F9;

}

.plan-card ul li:last-child{

    border:none;

}

.plan-card ul li i{

    color:#22C55E;

    margin-right:10px;

}

.plan-card a{

    display:block;

    text-align:center;

    background:#2563EB;

    color:#fff;

    text-decoration:none;

    padding:16px;

    border-radius:12px;

    font-weight:600;

    transition:.3s;

}

.plan-card a:hover{

    background:#1D4ED8;

}

@media(max-width:992px){

.plans-grid{

    grid-template-columns:1fr;

}

}

/*==========================
PLAN COMPARISON
==========================*/

.comparison-section{

    padding:100px 0;

    background:#F8FAFC;

}

.comparison-table{

    overflow-x:auto;

    margin-top:50px;

    border-radius:20px;

    box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.comparison-table table{

    width:100%;

    border-collapse:collapse;

    background:#fff;

}

.comparison-table th{

    background:#2563EB;

    color:#fff;

    padding:22px;

    font-size:20px;

}

.comparison-table td{

    padding:20px;

    text-align:center;

    border-bottom:1px solid #E5E7EB;

    color:#475569;

}

.comparison-table td:first-child{

    text-align:left;

    font-weight:600;

    color:#0F172A;

}

.comparison-table tbody tr:hover{

    background:#F8FAFC;

}

.fa-check{

    color:#22C55E;

    font-size:20px;

}

.fa-xmark{

    color:#EF4444;

    font-size:20px;

}

@media(max-width:768px){

.comparison-section{

    padding:80px 0;

}

.comparison-table th,

.comparison-table td{

    padding:15px;

    font-size:14px;

}

}

/*==========================
WHY UPGRADE
==========================*/

.upgrade-section{

    padding:100px 0;

    background:#FFFFFF;

}

.upgrade-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.upgrade-card{

    background:#fff;

    border:1px solid #E5E7EB;

    border-radius:20px;

    padding:40px 30px;

    text-align:center;

    box-shadow:0 15px 35px rgba(0,0,0,.06);

    transition:.35s;

}

.upgrade-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 45px rgba(37,99,235,.15);

}

.upgrade-icon{

    width:85px;

    height:85px;

    margin:auto;

    margin-bottom:25px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:34px;

}

.upgrade-icon.blue{

    background:#DBEAFE;

    color:#2563EB;

}

.upgrade-icon.green{

    background:#DCFCE7;

    color:#16A34A;

}

.upgrade-icon.orange{

    background:#FED7AA;

    color:#EA580C;

}

.upgrade-icon.purple{

    background:#E9D5FF;

    color:#9333EA;

}

.upgrade-icon.red{

    background:#FEE2E2;

    color:#DC2626;

}

.upgrade-icon.cyan{

    background:#CFFAFE;

    color:#0891B2;

}

.upgrade-card h3{

    font-size:24px;

    color:#0F172A;

    margin-bottom:15px;

}

.upgrade-card p{

    color:#64748B;

    line-height:1.8;

}

@media(max-width:992px){

.upgrade-grid{

    grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.upgrade-section{

    padding:80px 0;

}

.upgrade-grid{

    grid-template-columns:1fr;

}

}

/*==========================
PRICING FAQ
==========================*/

.pricing-faq{

    padding:100px 0;

    background:#F8FAFC;

}

.pricing-faq-wrapper{

    max-width:900px;

    margin:60px auto 0;

}

.pricing-faq-item{

    background:#fff;

    border:1px solid #E5E7EB;

    border-radius:18px;

    margin-bottom:20px;

    overflow:hidden;

    box-shadow:0 10px 25px rgba(0,0,0,.05);

}

.pricing-faq-question{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:24px 30px;

    cursor:pointer;

}

.pricing-faq-question h3{

    font-size:22px;

    color:#0F172A;

}

.pricing-faq-question i{

    width:42px;

    height:42px;

    border-radius:50%;

    background:#DBEAFE;

    color:#2563EB;

    display:flex;

    justify-content:center;

    align-items:center;

    transition:.3s;

}

.pricing-faq-answer{

    display:none;

    padding:0 30px 25px;

}

.pricing-faq-answer p{

    color:#64748B;

    line-height:1.9;

}

.pricing-faq-item.active .pricing-faq-answer{

    display:block;

}

.pricing-faq-item.active .pricing-faq-question i{

    transform:rotate(45deg);

    background:#2563EB;

    color:#fff;

}

@media(max-width:768px){

.pricing-faq{

    padding:80px 0;

}

.pricing-faq-question{

    padding:20px;

}

.pricing-faq-question h3{

    font-size:18px;

}

.pricing-faq-answer{

    padding:0 20px 20px;

}

}
/*==========================
PRICING CTA
==========================*/

.pricing-cta{

    padding:100px 0;

    background:#FFFFFF;

}

.pricing-cta-box{

    background:linear-gradient(135deg,#2563EB,#1D4ED8);

    border-radius:30px;

    padding:80px 60px;

    text-align:center;

    color:#fff;

    position:relative;

    overflow:hidden;

}

.pricing-cta-box::before{

    content:"";

    position:absolute;

    top:-120px;

    right:-120px;

    width:260px;

    height:260px;

    border-radius:50%;

    background:rgba(255,255,255,.08);

}

.pricing-cta-box::after{

    content:"";

    position:absolute;

    bottom:-120px;

    left:-120px;

    width:220px;

    height:220px;

    border-radius:50%;

    background:rgba(255,255,255,.06);

}

.pricing-cta-badge{

    display:inline-block;

    padding:12px 24px;

    background:rgba(255,255,255,.15);

    border:1px solid rgba(255,255,255,.25);

    border-radius:30px;

    font-size:14px;

    font-weight:600;

    margin-bottom:25px;

    position:relative;

    z-index:2;

}

.pricing-cta-box h2{

    font-size:46px;

    line-height:1.3;

    margin-bottom:25px;

    position:relative;

    z-index:2;

}

.pricing-cta-box p{

    max-width:760px;

    margin:0 auto 40px;

    color:#E2E8F0;

    font-size:18px;

    line-height:1.9;

    position:relative;

    z-index:2;

}

.pricing-cta-buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    position:relative;

    z-index:2;

}

.pricing-cta-primary{

    display:inline-block;

    padding:16px 36px;

    background:#fff;

    color:#2563EB;

    border-radius:12px;

    text-decoration:none;

    font-weight:700;

    transition:.3s;

}

.pricing-cta-primary:hover{

    transform:translateY(-4px);

    box-shadow:0 15px 35px rgba(0,0,0,.18);

}

.pricing-cta-secondary{

    display:inline-block;

    padding:16px 36px;

    border:2px solid rgba(255,255,255,.4);

    color:#fff;

    border-radius:12px;

    text-decoration:none;

    font-weight:700;

    transition:.3s;

}

.pricing-cta-secondary:hover{

    background:#fff;

    color:#2563EB;

}

@media(max-width:768px){

.pricing-cta{

    padding:80px 0;

}

.pricing-cta-box{

    padding:50px 25px;

}

.pricing-cta-box h2{

    font-size:30px;

}

.pricing-cta-box p{

    font-size:16px;

}

.pricing-cta-buttons{

    flex-direction:column;

    align-items:center;

}

.pricing-cta-primary,

.pricing-cta-secondary{

    width:240px;

    text-align:center;

}

}