/*=========================================================
MYROOMO SUBSCRIPTION PAGE
=========================================================*/

:root{

--primary:#0d6efd;
--secondary:#00b894;
--dark:#0f172a;
--light:#f8fafc;
--border:#e5e7eb;
--text:#475569;
--gold:#ffb703;
--danger:#ef4444;

}

body{

background:#f5f7fb;

}






/*=========================================================
HERO
=========================================================*/

.pricing-hero{

padding:120px 0 80px;

background:linear-gradient(135deg,#0f172a,#1e3a8a);

color:#fff;

position:relative;

overflow:hidden;

}

.pricing-hero::before{

content:"";

position:absolute;

width:500px;

height:500px;

background:rgba(255,255,255,.05);

border-radius:50%;

right:-150px;

top:-120px;

}

.hero-badge{

display:inline-block;

padding:8px 22px;

border-radius:50px;

background:rgba(255,255,255,.12);

font-weight:600;

margin-bottom:25px;

}

.hero-badge i{

color:#ffc107;

margin-right:8px;

}

.pricing-hero h1{

font-size:56px;

font-weight:800;

line-height:1.2;

margin-bottom:25px;

}

.pricing-hero h1 span{

color:#ffd54f;

}

.hero-description{

max-width:760px;

margin:auto;

font-size:19px;

line-height:1.9;

opacity:.9;

}

.hero-buttons{

margin-top:45px;

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}





.btn-primary-custom{

background:#fff;

color:#0f172a;

padding:15px 34px;

border-radius:12px;

font-weight:700;

text-decoration:none;

transition:.3s;

}

.btn-primary-custom:hover{

transform:translateY(-4px);

}

.btn-outline-custom{

border:2px solid #fff;

color:#fff;

padding:15px 34px;

border-radius:12px;

text-decoration:none;

transition:.3s;

}

.btn-outline-custom:hover{

background:#fff;

color:#0f172a;

}






/*=========================================================
BILLING
=========================================================*/

.billing-section{

margin-top:-40px;

position:relative;

z-index:10;

}

.billing-box{

background:#fff;

padding:35px;

border-radius:18px;

box-shadow:0 20px 60px rgba(0,0,0,.08);

text-align:center;

}

.billing-title{

font-size:24px;

font-weight:700;

margin-bottom:25px;

}

.billing-toggle{

display:flex;

justify-content:center;

align-items:center;

gap:20px;

font-weight:600;

}

.billing-toggle span.active{

color:var(--primary);

}

.billing-note{

margin-top:25px;

color:#64748b;

}






/*=========================================================
SWITCH
=========================================================*/

.switch{

position:relative;

display:inline-block;

width:70px;

height:36px;

}

.switch input{

display:none;

}

.slider{

position:absolute;

cursor:pointer;

background:#d1d5db;

top:0;

left:0;

right:0;

bottom:0;

transition:.3s;

}

.slider:before{

content:"";

position:absolute;

height:28px;

width:28px;

left:4px;

bottom:4px;

background:#fff;

transition:.3s;

}

input:checked + .slider{

background:#2563eb;

}

input:checked + .slider:before{

transform:translateX(34px);

}

.slider.round{

border-radius:50px;

}

.slider.round:before{

border-radius:50%;

}






/*=========================================================
SECTION TITLE
=========================================================*/

.pricing-intro{

padding:70px 0 30px;

}

.pricing-intro h2{

font-size:42px;

font-weight:800;

margin-bottom:20px;

color:var(--dark);

}

.pricing-intro p{

max-width:750px;

margin:auto;

color:#64748b;

font-size:18px;

line-height:1.8;

}






/*=========================================================
PRICING CARDS
=========================================================*/

.pricing-plans{

    padding:40px 0 100px;

}

.pricing-card{

    background:#fff;

    border-radius:24px;

    padding:38px 34px;

    height:100%;

    position:relative;

    overflow:hidden;

    border:1px solid #e8edf5;

    box-shadow:
        0 12px 30px rgba(15,23,42,.05),
        0 30px 70px rgba(15,23,42,.06);

    transition:all .35s ease;

}

.pricing-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:5px;

    background:linear-gradient(90deg,#2563eb,#06b6d4);

    transform:scaleX(0);

    transform-origin:left;

    transition:.35s;

}

.pricing-card:hover{

    transform:translateY(-12px);

    box-shadow:
        0 25px 55px rgba(15,23,42,.12),
        0 45px 90px rgba(15,23,42,.10);

}

.pricing-card:hover::before{

    transform:scaleX(1);

}

.plan-header{

    text-align:center;

    margin-bottom:28px;

}

.plan-header h3{

    font-size:30px;

    font-weight:800;

    color:#0f172a;

    margin:0;

}

.price-wrapper{

    text-align:center;

    margin-bottom:18px;

}

.price-wrapper h2{

    font-size:56px;

    font-weight:800;

    color:#2563eb;

    letter-spacing:-2px;

    margin:0;

}

.billing-text{

    color:#64748b;

    font-size:15px;

    margin-top:8px;

}

.gst-text{

    background:#ecfdf5;

    color:#16a34a;

    border-radius:12px;

    padding:12px;

    text-align:center;

    font-size:13px;

    font-weight:700;

    margin-bottom:28px;

}

.saving-box{

    background:#eff6ff;

    color:#2563eb;

    text-align:center;

    padding:10px;

    border-radius:10px;

    font-size:13px;

    font-weight:700;

    margin-bottom:22px;

}

.plan-details{

    margin-bottom:28px;

}

.detail-item{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:14px 0;

    border-bottom:1px solid #eef2f7;

    color:#334155;

    font-weight:600;

}

.detail-item:last-child{

    border-bottom:none;

}

.detail-item i{

    color:#2563eb;

    margin-right:10px;

}

.plan-description{

    text-align:center;

    color:#64748b;

    line-height:1.8;

    min-height:70px;

    margin-bottom:28px;

}

.btn-plan{

    display:block;

    width:100%;

    padding:15px;

    border-radius:14px;

    background:linear-gradient(135deg,#2563eb,#1d4ed8);

    color:#fff;

    text-align:center;

    text-decoration:none;

    font-weight:700;

    transition:.35s;

}

.btn-plan:hover{

    transform:translateY(-3px);

    color:#fff;

    box-shadow:0 18px 35px rgba(37,99,235,.28);

}
.plan-features{

    padding:100px 0;

    background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);

}

.plan-features .section-badge{

    display:inline-block;

    padding:10px 22px;

    background:rgba(37,99,235,.08);

    color:#2563eb;

    border-radius:40px;

    font-size:14px;

    font-weight:700;

    letter-spacing:.5px;

    margin-bottom:18px;

}

.plan-features h2{

    font-size:46px;

    font-weight:800;

    color:#0f172a;

    margin-bottom:18px;

}

.plan-features p{

    color:#64748b;

    font-size:18px;

    line-height:1.8;

    max-width:760px;

    margin:auto;

}

.feature-box{

    background:#fff;

    border-radius:22px;

    padding:35px 30px;

    height:100%;

    text-align:center;

    border:1px solid #eef2f7;

    box-shadow:

        0 10px 30px rgba(15,23,42,.05);

    transition:all .35s ease;

    position:relative;

    overflow:hidden;

}

.feature-box::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:4px;

    background:linear-gradient(90deg,#2563eb,#06b6d4);

    transform:scaleX(0);

    transform-origin:left;

    transition:.35s;

}

.feature-box:hover{

    transform:translateY(-10px);

    box-shadow:

        0 20px 45px rgba(15,23,42,.12);

}

.feature-box:hover::before{

    transform:scaleX(1);

}

/* Icon Circle */

.feature-box i{

    width:78px;

    height:78px;

    line-height:78px;

    border-radius:50%;

    font-size:30px;

    color:#2563eb;

    background:linear-gradient(135deg,#e0ecff,#f0f7ff);

    margin-bottom:25px;

    transition:.35s;

}

.feature-box:hover i{

    background:linear-gradient(135deg,#2563eb,#1d4ed8);

    color:#fff;

    transform:rotateY(180deg);

}

.feature-box h5{

    font-size:22px;

    font-weight:700;

    color:#0f172a;

    margin-bottom:15px;

}

.feature-box p{

    margin:0;

    font-size:15px;

    color:#64748b;

    line-height:1.8;

}

/* Responsive */

@media(max-width:991px){

.plan-features{

padding:80px 0;

}

.plan-features h2{

font-size:36px;

}

}

@media(max-width:768px){

.plan-features h2{

font-size:30px;

}

.plan-features p{

font-size:16px;

}

.feature-box{

padding:30px 25px;

}

.feature-box i{

width:70px;

height:70px;

line-height:70px;

font-size:28px;

}

}

/*=========================================================
FEATURED PLAN
=========================================================*/

.featured{

    transform:scale(1.05);

    border:2px solid #2563eb;

    z-index:2;

    box-shadow:
        0 25px 60px rgba(37,99,235,.18);

}

.popular-badge{

    position:absolute;

    top:18px;

    right:-48px;

    padding:10px 58px;

    background:linear-gradient(135deg,#ef4444,#dc2626);

    color:#fff;

    font-size:11px;

    font-weight:700;

    letter-spacing:1px;

    transform:rotate(45deg);

}

.btn-featured{

    background:linear-gradient(135deg,#ef4444,#dc2626);

}

.btn-featured:hover{

    background:linear-gradient(135deg,#dc2626,#b91c1c);

}






/*=========================================================
PLAN BADGES
=========================================================*/

.plan-tag{

    display:inline-block;

    padding:8px 18px;

    border-radius:40px;

    background:#2563eb;

    color:#fff;

    font-size:12px;

    font-weight:700;

    letter-spacing:.5px;

    margin-bottom:18px;

}

.plan-tag.free{

    background:#10b981;

}

.enterprise-badge{

    display:inline-block;

    padding:8px 18px;

    border-radius:40px;

    background:linear-gradient(135deg,#111827,#374151);

    color:#fff;

    font-size:12px;

    font-weight:700;

    letter-spacing:.5px;

    margin-bottom:18px;

}
/*=========================================================
PRICING CTA
=========================================================*/

.pricing-cta{

    position:relative;

    overflow:hidden;

    margin:100px 0 0;

    padding:100px 40px;

    border-radius:30px;

    background:linear-gradient(135deg,#0f172a,#1d4ed8);

    box-shadow:0 25px 60px rgba(15,23,42,.18);

}

.pricing-cta::before{

    content:"";

    position:absolute;

    width:450px;

    height:450px;

    border-radius:50%;

    background:rgba(255,255,255,.06);

    top:-180px;

    right:-150px;

}

.pricing-cta::after{

    content:"";

    position:absolute;

    width:350px;

    height:350px;

    border-radius:50%;

    background:rgba(255,255,255,.04);

    left:-100px;

    bottom:-140px;

}

.pricing-cta .container{

    position:relative;

    z-index:2;

}

.pricing-cta h2{

    color:#fff;

    font-size:52px;

    font-weight:800;

    margin-bottom:18px;

}

.pricing-cta p{

    color:rgba(255,255,255,.90);

    font-size:20px;

    line-height:1.8;

    max-width:700px;

    margin:0 auto 45px;

}

.pricing-cta .btn{

    min-width:220px;

    padding:16px 35px;

    border-radius:12px;

    font-size:17px;

    font-weight:700;

    transition:.35s;

}

.pricing-cta .btn-light{

    background:#fff;

    color:#0f172a;

    border:none;

}

.pricing-cta .btn-light:hover{

    background:#f8fafc;

    transform:translateY(-4px);

}

.pricing-cta .btn-outline-light{

    border:2px solid rgba(255,255,255,.45);

    color:#fff;

    background:transparent;

}

.pricing-cta .btn-outline-light:hover{

    background:#fff;

    color:#0f172a;

    transform:translateY(-4px);

}

@media(max-width:768px){

.pricing-cta{

padding:70px 25px;

border-radius:20px;

}

.pricing-cta h2{

font-size:34px;

}

.pricing-cta p{

font-size:17px;

}

.pricing-cta .btn{

width:100%;

margin-bottom:15px;

}

}
/*=========================================================
CTA BUTTONS
=========================================================*/

.cta-buttons{

display:flex;

justify-content:center;

align-items:center;

gap:20px;

flex-wrap:wrap;

margin-top:45px;

}

.cta-buttons .btn{

min-width:220px;

padding:16px 35px;

border-radius:14px;

font-size:17px;

font-weight:700;

transition:.35s;

}

.cta-buttons .btn-light{

background:#fff;

color:#0f172a;

border:none;

}

.cta-buttons .btn-light:hover{

background:#fff;

transform:translateY(-5px);

box-shadow:0 20px 40px rgba(255,255,255,.20);

}

.cta-buttons .btn-outline-light{

background:transparent;

border:2px solid rgba(255,255,255,.45);

color:#fff;

}

.cta-buttons .btn-outline-light:hover{

background:#fff;

color:#0f172a;

transform:translateY(-5px);

}

@media(max-width:768px){

.cta-buttons{

flex-direction:column;

}

.cta-buttons .btn{

width:100%;

}

}