html{
    background:#fff;
}
body.pricing-page{
    background:#fff;
    margin:0;
    max-width:none;
    min-height:100vh;
    width:100%;
}
.pricing-shell{
    background:#fff;
    min-height:100vh;
}
.pricing-main{
    margin:0 auto;
    max-width:1500px;
    padding:50px 6% 68px;
}
.pricing-hero{
    margin:0 auto 34px;
    max-width:900px;
    text-align:center;
}
.pricing-kicker{
    color:#6652e8;
    display:block;
    font-size:.76rem;
    font-weight:900;
    letter-spacing:.11em;
    margin-bottom:16px;
    text-transform:uppercase;
}
.pricing-hero h1{
    color:#17162b;
    font-size:clamp(2.7rem,4.8vw,4.45rem);
    letter-spacing:-.06em;
    line-height:1;
    margin:0 auto 20px;
    max-width:880px;
}
.pricing-hero p{
    color:#69677d;
    font-size:1.02rem;
    line-height:1.6;
    margin:0 auto;
    max-width:650px;
}
.pricing-current-access{
    align-items:center;
    background:#f7f4ff;
    border:1px solid #e7e0ff;
    border-radius:20px;
    display:grid;
    gap:5px 20px;
    grid-template-columns:minmax(0,1fr) auto;
    margin:0 auto 24px;
    max-width:1120px;
    padding:20px 24px;
}
.pricing-current-access strong{
    color:#2b2550;
    font-size:.96rem;
}
.pricing-current-access p{
    color:#716b89;
    grid-column:1;
    line-height:1.5;
    margin:0;
}
.pricing-current-access-link{
    align-self:center;
    background:#6652e8;
    border-radius:999px;
    color:#fff;
    font-weight:850;
    grid-column:2;
    grid-row:1 / span 2;
    padding:12px 18px;
    text-decoration:none;
    white-space:nowrap;
}
.pricing-grid{
    align-items:stretch;
    display:grid;
    gap:24px;
    grid-template-columns:repeat(2,minmax(0,1fr));
    margin:0 auto;
    max-width:1120px;
}
.pricing-card{
    background:linear-gradient(145deg,#f8f5ff 0%,#f1ecff 100%);
    border:1px solid rgba(71,62,115,.10);
    border-radius:28px;
    box-shadow:0 20px 48px rgba(35,28,78,.07);
    display:flex;
    flex-direction:column;
    min-width:0;
    overflow:hidden;
    padding:42px;
    position:relative;
}
.pricing-card--featured{
    background:linear-gradient(145deg,#f1fff8 0%,#e2f7ec 100%);
    border-color:rgba(8,130,79,.14);
    box-shadow:0 20px 48px rgba(35,28,78,.07);
}
.pricing-badge{
    background:#fff;
    border:1px solid rgba(8,130,79,.15);
    border-radius:999px;
    color:#08764a;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.08em;
    padding:8px 11px;
    position:absolute;
    right:30px;
    text-transform:uppercase;
    top:30px;
}
.pricing-plan-name{
    color:#6652e8;
    font-size:.76rem;
    font-weight:900;
    letter-spacing:.11em;
    margin-bottom:22px;
    text-transform:uppercase;
}
.pricing-card--featured .pricing-plan-name{color:#07824f}
.pricing-price{
    align-items:baseline;
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}
.pricing-price strong{
    color:#17162b;
    font-size:clamp(3rem,5vw,4.35rem);
    letter-spacing:-.07em;
    line-height:.95;
}
.pricing-price span{
    color:#69677d;
    font-size:.9rem;
    font-weight:750;
}
.pricing-equivalent{
    color:#69677d;
    font-size:.9rem;
    font-weight:700;
    margin:12px 0 27px;
}
.pricing-card ul{
    border-top:1px solid rgba(71,62,115,.12);
    display:grid;
    gap:13px;
    list-style:none;
    margin:0 0 30px;
    padding:27px 0 0;
}
.pricing-card li{
    color:#3f3b50;
    font-size:.92rem;
    font-weight:680;
    line-height:1.45;
    padding-left:27px;
    position:relative;
}
.pricing-card li::before{
    color:#159b63;
    content:"✓";
    font-weight:900;
    left:0;
    position:absolute;
}
.pricing-button{
    align-items:center;
    border-radius:999px;
    display:flex;
    font-weight:850;
    gap:9px;
    justify-content:center;
    margin-top:auto;
    padding:14px 20px;
    text-align:center;
    text-decoration:none;
}
.pricing-button--primary{background:#159b63;color:#fff}
.pricing-button--primary:hover{background:#0c8150}
.pricing-button--secondary{
    background:#6652e8;
    border:1px solid #6652e8;
    color:#fff;
}
.pricing-button--secondary:hover{background:#5542d4;border-color:#5542d4}
.pricing-button--disabled{
    background:#eceaf3;
    border:1px solid #dedbe9;
    color:#8d899b;
    cursor:not-allowed;
}
.pricing-card small{
    color:#777287;
    display:block;
    font-size:.72rem;
    margin-top:12px;
    text-align:center;
}
.pricing-note{
    align-items:start;
    background:linear-gradient(145deg,#fffdf5 0%,#fff4c9 100%);
    border:1px solid rgba(71,62,115,.10);
    border-radius:28px;
    display:grid;
    gap:7px;
    grid-template-columns:210px minmax(0,1fr);
    margin:24px auto 0;
    max-width:1120px;
    padding:26px 30px;
}
.pricing-note strong{color:#b97800}
.pricing-note p{
    color:#69677d;
    line-height:1.55;
    margin:0;
}
.pricing-footer{
    align-items:center;
    border-top:1px solid #ebe9f2;
    display:flex;
    justify-content:space-between;
    margin:0 6%;
    padding:24px 0;
}
.pricing-footer span,.pricing-footer a{
    color:#777287;
    font-size:.78rem;
}
.pricing-footer a{text-decoration:none}
.pricing-footer a:hover{color:#5844d8}
@media(max-width:760px){
    .pricing-main{padding-bottom:52px;padding-top:38px}
    .pricing-hero{margin-bottom:28px}
    .pricing-hero h1{font-size:clamp(2.45rem,11vw,3.7rem)}
    .pricing-current-access{grid-template-columns:1fr}
    .pricing-current-access-link{grid-column:1;grid-row:auto;justify-self:start;margin-top:8px}
    .pricing-grid{grid-template-columns:1fr}
    .pricing-card{padding:30px 25px}
    .pricing-badge{right:22px;top:24px}
    .pricing-note{grid-template-columns:1fr;padding:24px 25px}
    .pricing-footer{align-items:flex-start;flex-direction:column;gap:10px}
}
