*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    color:#101827;
    background:#f8fafc;
}
a{color:inherit;text-decoration:none}

/* NAV */
.public-nav{
    position:fixed;
    top:18px;
    left:50%;
    transform:translateX(-50%);
    z-index:50;
    width:min(1120px,calc(100% - 32px));
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:14px 16px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:22px;
    background:rgba(10,15,35,.78);
    backdrop-filter:blur(18px);
    color:#fff;
    box-shadow:0 20px 60px rgba(0,0,0,.22);
}
.public-logo,.footer-logo{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:18px;
    font-weight:900;
}
.public-logo strong,.footer-logo strong{color:#9fb7ff}
.public-logo-mark{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:linear-gradient(135deg,#5b7cfa,#9b5cff);
    box-shadow:0 10px 30px rgba(91,124,250,.42);
}
.public-nav-links{
    display:flex;
    align-items:center;
    gap:20px;
    font-size:14px;
    font-weight:800;
    color:rgba(255,255,255,.78);
}
.public-nav-links a:hover{color:#fff}
.public-nav-cta{
    padding:10px 14px;
    border-radius:999px;
    background:#fff;
    color:#111827!important;
}
.public-menu-toggle{
    display:none;
    width:42px;
    height:42px;
    border:0;
    border-radius:14px;
    background:rgba(255,255,255,.12);
    cursor:pointer;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px;
}
.public-menu-toggle span{
    width:19px;
    height:2px;
    border-radius:99px;
    background:#fff;
}

/* BUTTONS */
.public-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:0 22px;
    border-radius:999px;
    font-size:15px;
    font-weight:900;
}
.public-btn-primary{
    background:linear-gradient(135deg,#5b7cfa,#9b5cff);
    color:#fff;
    box-shadow:0 18px 44px rgba(91,124,250,.38);
}
.public-btn-secondary{
    border:1px solid rgba(255,255,255,.18);
    background:rgba(255,255,255,.08);
    color:#fff;
}

/* HERO */
.public-hero{
    position:relative;
    min-height:100vh;
    padding:150px 24px 190px;
    background:
        radial-gradient(circle at 20% 10%,rgba(105,90,255,.38),transparent 30%),
        radial-gradient(circle at 80% 20%,rgba(37,196,255,.25),transparent 30%),
        linear-gradient(135deg,#070b18 0%,#111936 48%,#171029 100%);
    color:#fff;
    overflow:hidden;
}
.hero-v2:after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-1px;
    height:240px;
    background:linear-gradient(180deg,rgba(7,11,24,0) 0%,rgba(30,41,59,.18) 28%,rgba(248,250,252,.55) 62%,#f8fafc 100%);
    pointer-events:none;
}
.public-hero-inner{
    position:relative;
    z-index:2;
    width:min(1320px,calc(100% - 64px));
    margin:0 auto;
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:76px;
    align-items:center;
}
.hero-copy{max-width:560px}
.public-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 12px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    background:rgba(255,255,255,.08);
    color:#c7d2fe;
    font-size:13px;
    font-weight:900;
    margin-bottom:22px;
}
.public-hero h1{
    margin:0;
    font-size:64px;
    line-height:.98;
    letter-spacing:-.06em;
}
.public-hero h1 span{
    background:linear-gradient(135deg,#93c5fd,#c4b5fd,#f0abfc);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}
.public-hero p{
    margin:24px 0 0;
    max-width:560px;
    color:#cbd5e1;
    font-size:19px;
    line-height:1.7;
}
.public-hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:34px;
}
.hero-trust-points{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:22px;
    color:#e5e7eb;
    font-size:14px;
    font-weight:800;
}
.hero-social-proof{
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:30px;
}
.hero-avatar-stack{display:flex}
.hero-avatar-stack span{
    width:34px;
    height:34px;
    margin-left:-8px;
    display:grid;
    place-items:center;
    border:2px solid #0b1023;
    border-radius:50%;
    background:linear-gradient(135deg,#60a5fa,#a78bfa);
    color:#fff;
    font-size:12px;
    font-weight:900;
}
.hero-avatar-stack span:first-child{margin-left:0}
.hero-social-proof strong{display:block;color:#fbbf24;letter-spacing:2px}
.hero-social-proof small{display:block;color:#cbd5e1;font-weight:800}

/* DASHBOARD */
.saas-dashboard{
    display:grid;
    grid-template-columns:170px 1fr;
    min-height:580px;
    width:100%;
    border:1px solid rgba(255,255,255,.16);
    border-radius:30px;
    background:rgba(8,13,30,.86);
    box-shadow:0 35px 100px rgba(0,0,0,.45);
    overflow:hidden;
}
.saas-dashboard-sidebar{
    padding:22px 16px;
    background:rgba(255,255,255,.04);
    border-right:1px solid rgba(255,255,255,.08);
}
.dash-logo{
    display:flex;
    align-items:center;
    gap:8px;
    color:#fff;
    font-size:12px;
    font-weight:900;
    margin-bottom:18px;
}
.dash-logo span{
    width:22px;height:22px;display:grid;place-items:center;
    border-radius:8px;background:linear-gradient(135deg,#5b7cfa,#9b5cff);
}
.saas-dashboard-sidebar nav{display:grid;gap:7px}
.saas-dashboard-sidebar nav a{
    padding:10px 11px;border-radius:12px;color:#9ca3af;font-size:12px;font-weight:800;
}
.saas-dashboard-sidebar nav a.active{
    background:linear-gradient(135deg,rgba(91,124,250,.28),rgba(155,92,255,.2));
    color:#fff;
}
.saas-dashboard-main{padding:26px}
.dash-topbar{
    display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;
}
.dash-topbar strong{display:block;color:#fff;font-size:17px}
.dash-topbar small{color:#94a3b8;font-weight:800}
.dash-user{
    width:34px;height:34px;display:grid;place-items:center;border-radius:50%;
    background:#111827;color:#22c55e;border:1px solid rgba(255,255,255,.12);
}
.dash-metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.dash-metric{
    min-height:130px;padding:18px;border:1px solid rgba(255,255,255,.08);
    border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
}
.dash-metric span{display:block;color:#94a3b8;font-size:12px;font-weight:900}
.dash-metric strong{display:block;margin-top:10px;color:#fff;font-size:28px;letter-spacing:-.04em}
.dash-metric small{display:block;margin-top:8px;color:#22c55e;font-size:11px;font-weight:800}
.dash-bottom{display:grid;grid-template-columns:1.3fr .8fr;gap:14px;margin-top:14px}
.dash-chart-card,.dash-activity{
    padding:18px;border:1px solid rgba(255,255,255,.08);
    border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
}
.dash-card-title{margin-bottom:14px;color:#fff;font-size:13px;font-weight:900}
.dash-chart{
    height:190px;display:flex;align-items:end;gap:10px;padding:12px;border-radius:16px;
    background:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
    background-size:100% 38px,48px 100%;
}
.dash-chart span{
    flex:1;border-radius:999px 999px 6px 6px;background:linear-gradient(180deg,#8b5cf6,#38bdf8);
}
.dash-chart span:nth-child(1){height:35%}.dash-chart span:nth-child(2){height:58%}.dash-chart span:nth-child(3){height:46%}.dash-chart span:nth-child(4){height:72%}.dash-chart span:nth-child(5){height:63%}.dash-chart span:nth-child(6){height:88%}
.dash-activity{display:grid;align-content:start;gap:12px}
.activity-row{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center}
.activity-row>span{
    width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.08);
}
.activity-row strong{display:block;color:#fff;font-size:12px}
.activity-row small{display:block;color:#94a3b8;font-size:11px}
.activity-row em{color:#64748b;font-size:11px;font-style:normal;font-weight:800}

/* GENERAL SECTIONS */
.public-section-inner{
    width:min(1120px,calc(100% - 32px));
    margin:0 auto;
}
.public-section-kicker{
    display:inline-flex;
    padding:7px 12px;
    border-radius:999px;
    background:#eef2ff;
    color:#5b5ff7;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.public-trusted{
    position:relative;
    z-index:3;
    margin-top:-135px;
    padding:70px 24px 28px;
    background:transparent;
    text-align:center;
    color:#0f172a;
}
.public-trusted h2,.public-features h2,.how-heading h2,.pricing-heading h2{
    margin:18px auto 10px;
    max-width:720px;
    font-size:42px;
    line-height:1.05;
    letter-spacing:-.04em;
}
.public-trusted p,.public-features p,.how-heading p,.pricing-heading p{
    margin:0 auto;
    max-width:680px;
    color:#64748b;
    font-size:17px;
    line-height:1.7;
}

/* TRUSTED */
.trusted-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:14px;
    margin-top:34px;
}
.trusted-card{
    min-height:104px;
    display:grid;
    place-items:center;
    gap:8px;
    padding:18px 12px;
    border:1px solid #e5e7eb;
    border-radius:22px;
    background:#fff;
    box-shadow:0 18px 45px rgba(15,23,42,.06);
    font-weight:900;
}
.trusted-card span{
    width:44px;height:44px;display:grid;place-items:center;border-radius:16px;
    background:linear-gradient(135deg,#eef2ff,#f5f3ff);
    font-size:22px;
}

/* FEATURES */
.public-features{
    padding:40px 24px 28px;
    background:#f8fafc;
    color:#0f172a;
}
.features-heading{text-align:center;margin-bottom:28px}
.features-heading h2 span{display:block;color:#7c3aed}
.features-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
}
.feature-card{
    position:relative;
    min-height:160px;
    padding:20px;
    border:1px solid #e5e7eb;
    border-radius:28px;
    background:#fff;
    box-shadow:0 18px 50px rgba(15,23,42,.07);
    overflow:hidden;
}
.feature-icon{
    width:54px;height:54px;display:grid;place-items:center;margin-bottom:16px;
    border-radius:18px;background:linear-gradient(135deg,#eef2ff,#f5f3ff);font-size:24px;
}
.feature-card h3{margin:0 0 10px;font-size:20px;letter-spacing:-.03em}
.feature-card p{margin:0;font-size:15px;line-height:1.7;color:#64748b}

/* HOW */
.public-how{
    padding:70px 24px;
    background:#f8fafc;
    color:#0f172a;
}
.how-heading{
    text-align:center;
    margin-bottom:34px;
}
.how-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    align-items:stretch;
}
.how-card{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    min-height:360px;
    padding:30px;
    border:1px solid #e5e7eb;
    border-radius:30px;
    background:#fff;
    box-shadow:0 18px 50px rgba(15,23,42,.07);
}
.how-card-top{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:28px;
}

.how-number{
    width:56px;
    height:56px;
    display:grid;
    place-items:center;
    margin-bottom:24px;
    border-radius:50%;
    background:linear-gradient(135deg,#5b7cfa,#9b5cff);
    color:#fff;
    font-size:20px;
    font-weight:900;
    box-shadow:0 16px 40px rgba(91,124,250,.35);
}
.how-icon{
    width:56px;
    height:56px;
    display:grid;
    place-items:center;
    margin-bottom:20px;
    border-radius:20px;
    background:#eef2ff;
    font-size:26px;
}
.how-card h3{
    margin:0 0 10px;
    font-size:22px;
    letter-spacing:-.03em;
}
.how-card p{
    margin:0;
    color:#64748b;
    font-size:15px;
    line-height:1.7;
}

.how-points{
    width:100%;
    margin-top:auto;
    padding-top:22px;
    border-top:1px solid #eef2f7;
    display:grid;
    gap:10px;
}
.how-points span{
    display:block;
    color:#334155;
    font-size:14px;
    font-weight:800;
}

/* PRICING */
.public-pricing{
    padding:70px 24px 92px;
    background:#fff;
    color:#0f172a;
}
.pricing-heading{text-align:center;margin-bottom:44px}
.pricing-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}
.pricing-card{
    position:relative;
    padding:28px;
    border:1px solid #e5e7eb;
    border-radius:30px;
    background:#fff;
    box-shadow:0 18px 50px rgba(15,23,42,.07);
}
.pricing-card.featured{
    border-color:#7c3aed;
    box-shadow:0 26px 80px rgba(124,58,237,.18);
}
.pricing-badge{
    position:absolute;
    top:18px;
    right:18px;
    padding:6px 10px;
    border-radius:999px;
    background:#eef2ff;
    color:#6d28d9;
    font-size:11px;
    font-weight:900;
}
.pricing-card h3{margin:0 0 14px;font-size:24px}
.pricing-price{display:flex;align-items:flex-end;gap:4px;margin-bottom:18px}
.pricing-price strong{font-size:44px;letter-spacing:-.06em}
.pricing-price span{margin-bottom:9px;color:#64748b;font-weight:800}
.pricing-list{
    display:grid;
    gap:12px;
    margin:22px 0;
    color:#475569;
    font-size:14px;
    font-weight:700;
}
.pricing-card .public-btn{width:100%}

/* FOOTER */
.footer-v3{
    display:block;
    padding:76px 24px 30px;
    background:
        radial-gradient(circle at 18% 8%,rgba(91,124,250,.22),transparent 30%),
        radial-gradient(circle at 85% 0%,rgba(155,92,255,.22),transparent 34%),
        linear-gradient(180deg,#111936 0%,#070b18 72%);
    color:#fff;
}
.footer-v3-inner{
    width:min(1240px,calc(100% - 60px));
    margin:0 auto;
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr;
    gap:56px;
    align-items:start;
}
.footer-v3-brand{
    max-width:430px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}
.footer-logo{font-size:22px}
.footer-v3-brand p{
    max-width:390px;
    margin:20px 0 30px;
    color:#a7b3c8;
    font-size:16px;
    line-height:1.7;
}
.footer-v3-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:14px 26px;
    border-radius:999px;
    background:#fff;
    color:#111827;
    font-size:14px;
    font-weight:900;
    white-space:nowrap;
}
.footer-v3-links{display:contents}
.footer-v3-column{
    display:flex;
    flex-direction:column;
    gap:12px;
}
.footer-v3-column strong{
    margin-bottom:6px;
    color:#fff;
    font-size:14px;
}
.footer-v3-column a{
    color:#94a3b8;
    font-size:14px;
    font-weight:750;
}
.footer-v3-column a:hover,.footer-v3-bottom a:hover{color:#fff}
.footer-v3-bottom{
    width:min(1240px,calc(100% - 60px));
    margin:52px auto 0;
    padding-top:24px;
    border-top:1px solid rgba(255,255,255,.1);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    color:#64748b;
    font-size:13px;
    font-weight:750;
}
.footer-v3-bottom div{display:flex;gap:16px}
.footer-v3-bottom a{color:#94a3b8}

/* RESPONSIVE */
@media(max-width:1100px){
    .public-hero-inner{grid-template-columns:1fr;gap:44px}
    .hero-copy{max-width:760px}
    .saas-dashboard-sidebar{display:none}
    .saas-dashboard{grid-template-columns:1fr;min-height:auto}
    .pricing-grid{grid-template-columns:repeat(2,1fr)}
    .trusted-grid{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:900px){
    .public-nav{
        top:10px;
        width:calc(100% - 20px);
        padding:10px 10px 10px 12px;
        border-radius:18px;
    }
    .public-logo{font-size:16px}
    .public-logo-mark{width:32px;height:32px;border-radius:11px}
    .public-menu-toggle{display:flex}
    .public-nav-links{
        position:absolute;
        left:0;
        right:0;
        top:calc(100% + 10px);
        display:none;
        flex-direction:column;
        align-items:stretch;
        gap:8px;
        padding:12px;
        border:1px solid rgba(255,255,255,.14);
        border-radius:18px;
        background:rgba(10,15,35,.96);
        box-shadow:0 22px 60px rgba(0,0,0,.28);
    }
    .public-nav.menu-open .public-nav-links{display:flex}
    .public-nav-links a{
        display:block;
        padding:12px 14px;
        border-radius:13px;
        background:rgba(255,255,255,.06);
        color:#fff;
    }
    .public-nav-cta{text-align:center;background:#fff!important;color:#111827!important}

    .public-hero{min-height:auto;padding:112px 18px 90px}
    .public-hero-inner{width:100%;grid-template-columns:1fr;gap:28px}
    .public-hero h1{font-size:42px;line-height:1;letter-spacing:-.045em}
    .public-hero p{font-size:17px;line-height:1.6}
    .public-hero-actions{flex-direction:column;align-items:stretch}
    .public-hero-actions a{width:100%;text-align:center}
    .hero-trust-points span{width:100%}

    .dash-metrics,.dash-bottom{grid-template-columns:1fr}
    .saas-dashboard-main{padding:16px}

    .public-trusted{
        margin-top:-55px;
        padding:58px 18px 30px;
    }
    .public-features,.public-how,.public-pricing{
        padding-left:18px;
        padding-right:18px;
    }
    .public-trusted h2,.public-features h2,.how-heading h2,.pricing-heading h2{
        font-size:34px;
    }
    .features-grid,.how-grid,.pricing-grid{grid-template-columns:1fr}
    .trusted-grid{grid-template-columns:1fr}

    
    .public-how{padding-top:56px;padding-bottom:54px}
    .how-heading{margin-bottom:26px}
    .how-grid{grid-template-columns:1fr;gap:16px}
    .how-card{
        min-height:auto;
        display:flex;
        flex-direction:column;
        padding:24px;
        border-radius:26px;
    }
    .how-card-top{
        width:100%;
        display:flex;
        align-items:center;
        justify-content:space-between;
        margin-bottom:22px;
    }
    .how-number{
        width:56px;
        height:56px;
        margin:0;
    }
    .how-icon{
        width:52px;
        height:52px;
        margin:0;
        display:grid;
    }
    .how-card h3{font-size:25px;margin:0 0 10px}
    .how-card p{font-size:16px;line-height:1.6;margin:0 0 22px}
    .how-points{
        margin-top:0;
        padding-top:18px;
        gap:10px;
    }
    .how-points span{font-size:15px}

    .footer-v3{padding:72px 22px 28px}
    .footer-v3-inner{
        width:100%;
        display:block;
    }
    .footer-v3-brand{
        max-width:none;
        padding-bottom:22px;
        border-bottom:1px solid rgba(255,255,255,.1);
    }
    .footer-logo{font-size:24px}
    .footer-v3-brand p{font-size:15px;line-height:1.45;margin:16px 0}
    .footer-v3-cta{padding:11px 16px;font-size:14px}
    .footer-v3-links{display:block}
    .footer-v3-column{
        padding:18px 0;
        border-bottom:1px solid rgba(255,255,255,.1);
    }
    .footer-v3-column strong{font-size:16px;margin-bottom:12px}
    .footer-v3-column a{
        position:relative;
        display:block;
        padding-left:18px;
        margin-bottom:10px;
        font-size:15px;
    }
    .footer-v3-column a:before{
        content:"›";
        position:absolute;
        left:0;
        color:#8b5cf6;
        font-weight:900;
    }
    .footer-v3-bottom{
        width:100%;
        margin:22px 0 0;
        padding-top:0;
        border-top:0;
        display:block;
    }
    .footer-v3-bottom span{display:block;margin-bottom:14px}
    .footer-v3-bottom div{display:flex;flex-wrap:wrap;gap:14px 18px}
}

@media(max-width:520px){
    .public-hero h1{font-size:36px}
    .public-eyebrow{font-size:12px}
    .dash-chart{height:150px}
    .pricing-card,.feature-card{padding:22px;border-radius:22px}
    .how-card{grid-template-columns:52px 1fr;padding:20px}
    .how-card-top{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:28px;
}

.how-number{width:52px;height:52px}
}


/* Signup conversion polish */
.signup-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:9px 14px;
    border-radius:999px;
    background:linear-gradient(135deg,#eef2ff,#f5f3ff);
    color:#4f46e5;
    font-weight:900;
    box-shadow:0 12px 26px rgba(79,70,229,.10);
}

.signup-subtitle{
    max-width:520px;
    margin-left:auto !important;
    margin-right:auto !important;
    color:#64748b !important;
    line-height:1.65 !important;
}

.signup-trust{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:10px;
    margin:20px auto 24px;
    max-width:620px;
}

.signup-trust span{
    display:inline-flex;
    align-items:center;
    padding:9px 13px;
    border-radius:999px;
    background:#ffffff;
    border:1px solid #e5e7eb;
    color:#334155;
    font-size:13px;
    font-weight:900;
    box-shadow:0 10px 24px rgba(15,23,42,.05);
}

.auth-card,
.signup-card{
    background:linear-gradient(180deg,#ffffff,#fafbff) !important;
    box-shadow:0 30px 80px rgba(79,70,229,.12) !important;
    border:1px solid #e8eaf5 !important;
}

.auth-card input,
.auth-card select,
.signup-card input,
.signup-card select{
    min-height:56px;
    border-radius:14px !important;
    transition:.18s ease;
}

.auth-card input:focus,
.auth-card select:focus,
.signup-card input:focus,
.signup-card select:focus{
    border-color:#6366f1 !important;
    box-shadow:0 0 0 4px rgba(99,102,241,.10) !important;
}

.signup-includes{
    margin:20px 0 16px;
    padding:18px;
    border-radius:20px;
    background:linear-gradient(135deg,#f8fafc,#eef2ff);
    border:1px solid #e5e7eb;
}

.signup-includes h3{
    margin:0 0 12px;
    color:#0f172a;
    font-size:16px;
    letter-spacing:-.02em;
}

.signup-includes-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px 12px;
}

.signup-includes-grid span{
    color:#475569;
    font-size:13px;
    font-weight:800;
}

.auth-submit{
    min-height:58px !important;
    font-size:16px !important;
    font-weight:900 !important;
    border-radius:16px !important;
    box-shadow:0 18px 38px rgba(79,70,229,.24) !important;
    transition:.18s ease !important;
}

.auth-submit:hover{
    transform:translateY(-2px);
    box-shadow:0 24px 48px rgba(79,70,229,.30) !important;
}

.signup-safe{
    margin-top:14px;
    text-align:center;
    color:#64748b;
    font-size:13px;
    font-weight:800;
}

.signup-login-link{
    margin-top:16px;
    text-align:center;
    color:#64748b;
    font-size:14px;
    font-weight:800;
}

.signup-login-link a{
    color:#4f46e5;
    text-decoration:none;
    font-weight:900;
}

.signup-login-link a:hover{
    text-decoration:underline;
}

@media(max-width:640px){
    .signup-includes-grid{
        grid-template-columns:1fr;
    }

    .signup-trust{
        display:grid;
        grid-template-columns:1fr;
    }
}


/* Signup V2 polish */
.signup-v2{
    padding:130px 24px 90px;
    background:
        radial-gradient(circle at top left, rgba(79,70,229,.08), transparent 34%),
        radial-gradient(circle at top right, rgba(124,58,237,.08), transparent 30%),
        #ffffff;
}

.signup-v2-inner{
    max-width:760px;
    margin:0 auto;
}

.signup-v2-heading{
    text-align:center;
    margin-bottom:28px;
}

.signup-v2-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:9px 14px;
    border-radius:999px;
    background:linear-gradient(135deg,#eef2ff,#f5f3ff);
    color:#4f46e5;
    font-size:13px;
    font-weight:900;
    letter-spacing:.04em;
    box-shadow:0 12px 28px rgba(79,70,229,.10);
}

.signup-v2-heading h2{
    margin:18px 0 10px;
    color:#111827;
    font-size:42px;
    line-height:1.05;
    letter-spacing:-.055em;
}

.signup-v2-heading p{
    margin:0 auto;
    max-width:560px;
    color:#64748b;
    line-height:1.65;
    font-size:16px;
}

.signup-v2-trust{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
    margin-top:22px;
}

.signup-v2-trust span{
    display:inline-flex;
    padding:9px 13px;
    border-radius:999px;
    background:#fff;
    border:1px solid #e5e7eb;
    color:#334155;
    font-size:13px;
    font-weight:900;
    box-shadow:0 10px 22px rgba(15,23,42,.05);
}

.signup-v2-error{
    margin:0 0 18px;
    padding:14px 16px;
    border-radius:16px;
    background:#fee2e2;
    color:#991b1b;
    font-weight:900;
}

.signup-v2-card{
    display:grid;
    gap:16px;
    padding:30px;
    border-radius:30px;
    background:linear-gradient(180deg,#ffffff,#fafbff);
    border:1px solid #e8eaf5;
    box-shadow:0 30px 80px rgba(79,70,229,.13);
}

.signup-v2-card label{
    display:block;
    color:#111827;
    font-size:14px;
}

.signup-v2-card label strong{
    display:block;
    margin-bottom:8px;
    font-weight:900;
}

.signup-v2-card input,
.signup-v2-card select{
    width:100%;
    min-height:56px;
    padding:14px 16px;
    border:1px solid #e5e7eb;
    border-radius:15px;
    background:#fff;
    color:#111827;
    outline:none;
    transition:.18s ease;
}

.signup-v2-card input:focus,
.signup-v2-card select:focus{
    border-color:#6366f1;
    box-shadow:0 0 0 4px rgba(99,102,241,.10);
}

.signup-v2-includes{
    margin-top:4px;
    padding:18px;
    border-radius:22px;
    background:linear-gradient(135deg,#f8fafc,#eef2ff);
    border:1px solid #e5e7eb;
}

.signup-v2-includes h3{
    margin:0 0 12px;
    color:#0f172a;
    font-size:16px;
    letter-spacing:-.02em;
}

.signup-v2-includes div{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px 14px;
}

.signup-v2-includes span{
    color:#475569;
    font-size:13px;
    font-weight:900;
}

.signup-v2-submit{
    width:100%;
    min-height:60px;
    justify-content:center;
    border:0;
    border-radius:17px;
    font-size:16px;
    font-weight:900;
    box-shadow:0 18px 38px rgba(79,70,229,.24);
    transition:.18s ease;
}

.signup-v2-submit:hover{
    transform:translateY(-2px);
    box-shadow:0 24px 48px rgba(79,70,229,.30);
}

.signup-v2-safe,
.signup-v2-login{
    text-align:center;
    color:#64748b;
    font-size:13px;
    font-weight:800;
}

.signup-v2-login{
    font-size:14px;
}

.signup-v2-login a{
    color:#4f46e5;
    font-weight:900;
    text-decoration:none;
}

.signup-v2-login a:hover{
    text-decoration:underline;
}

@media(max-width:640px){
    .signup-v2{
        padding:95px 18px 70px;
    }

    .signup-v2-heading h2{
        font-size:32px;
    }

    .signup-v2-card{
        padding:22px;
        border-radius:24px;
    }

    .signup-v2-includes div{
        grid-template-columns:1fr;
    }

    .signup-v2-trust{
        display:grid;
        grid-template-columns:1fr;
    }
}


/* Premium Marketing Pages */
.marketing-hero{
    position:relative;
    overflow:hidden;
    padding:150px 24px 96px;
    background:linear-gradient(135deg,#020617 0%,#0f172a 45%,#312e81 100%);
    color:#fff;
}
.marketing-hero-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:54px;
    align-items:center;
}
.marketing-hero-copy h1{
    margin:18px 0;
    font-size:68px;
    line-height:.95;
    letter-spacing:-.075em;
}
.marketing-hero-copy p{
    color:#cbd5e1;
    font-size:19px;
    line-height:1.75;
}
.marketing-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:30px;
}
.marketing-proof-row{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:24px;
}
.marketing-proof-row span{
    padding:9px 12px;
    border-radius:999px;
    background:rgba(255,255,255,.1);
    color:#e2e8f0;
    font-weight:800;
    font-size:13px;
}
.marketing-dashboard-card{
    border-radius:32px;
    padding:24px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.2);
    box-shadow:0 34px 100px rgba(0,0,0,.42);
}
.mockup-metrics{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
}
.mockup-metrics div,
.mockup-panel,
.mockup-chart{
    border-radius:20px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.14);
    padding:18px;
}
.mockup-metrics strong{
    display:block;
    font-size:25px;
}
.mockup-metrics span,
.mockup-panel span{
    display:block;
    color:#cbd5e1;
    font-size:12px;
}
.mockup-panel{
    display:flex;
    justify-content:space-between;
    margin-top:12px;
}
.mockup-panel em{
    font-style:normal;
    padding:7px 10px;
    border-radius:999px;
    background:#dcfce7;
    color:#166534;
    font-size:11px;
    font-weight:900;
}
.mockup-chart{
    height:150px;
    margin-top:14px;
    display:flex;
    align-items:flex-end;
    gap:12px;
}
.mockup-chart span{
    flex:1;
    border-radius:999px 999px 10px 10px;
    background:linear-gradient(180deg,#a5b4fc,#6366f1);
}
.marketing-trusted,
.marketing-section,
.comparison-section,
.marketing-cta-section{
    padding:90px 24px;
}
.marketing-section{
    background:#fff;
}
.comparison-section{
    background:#f8fafc;
}
.marketing-section-heading{
    max-width:760px;
    margin:0 auto 46px;
    text-align:center;
}
.marketing-section-heading h2{
    margin:12px 0;
    font-size:48px;
    line-height:1.03;
    letter-spacing:-.06em;
    color:#0f172a;
}
.marketing-section-heading p{
    color:#64748b;
    font-size:17px;
    line-height:1.7;
}
.feature-showcase{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:34px;
    align-items:center;
    margin-bottom:34px;
    padding:34px;
    border-radius:34px;
    background:linear-gradient(180deg,#fff,#f8fafc);
    border:1px solid #e8eaf5;
    box-shadow:0 24px 80px rgba(15,23,42,.08);
}
.feature-showcase.reverse .feature-visual{
    order:2;
}
.feature-visual{
    min-height:390px;
    display:grid;
    place-items:center;
    border-radius:28px;
    background:linear-gradient(135deg,#eef2ff,#f8fafc);
}
.phone-card{
    width:min(320px,88%);
    padding:24px;
    border-radius:32px;
    background:#0f172a;
    color:#fff;
    box-shadow:0 30px 80px rgba(15,23,42,.28);
}
.phone-card h3{
    font-size:30px;
    letter-spacing:-.05em;
}
.stamp-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
}
.stamp-grid span{
    height:54px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:rgba(255,255,255,.1);
}
.stamp-grid span:not(:empty){
    background:linear-gradient(135deg,#6366f1,#8b5cf6);
}
.phone-card button{
    width:100%;
    margin-top:18px;
    border:0;
    border-radius:16px;
    padding:15px;
    font-weight:900;
}
.feature-content span{
    padding:9px 12px;
    border-radius:999px;
    background:#eef2ff;
    color:#4f46e5;
    font-size:13px;
    font-weight:900;
}
.feature-content h3{
    margin:18px 0 14px;
    font-size:42px;
    line-height:1.05;
    letter-spacing:-.055em;
}
.feature-content p{
    color:#64748b;
    font-size:17px;
    line-height:1.72;
}
.feature-content ul{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    padding:0;
    list-style:none;
}
.feature-content li{
    padding:13px 14px;
    border-radius:15px;
    background:#fff;
    border:1px solid #e5e7eb;
    font-weight:900;
}
.automation-stack{
    width:min(430px,90%);
    display:grid;
    gap:14px;
}
.automation-stack div{
    padding:22px;
    border-radius:22px;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 18px 42px rgba(15,23,42,.08);
}
.platform-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}
.platform-card{
    padding:28px;
    border-radius:26px;
    background:#fff;
    border:1px solid #e8eaf5;
    box-shadow:0 18px 50px rgba(15,23,42,.06);
}
.platform-card span{
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border-radius:17px;
    background:#eef2ff;
    font-size:25px;
}
.platform-card h3{
    color:#0f172a;
    font-size:22px;
}
.platform-card p{
    color:#64748b;
    line-height:1.65;
}
.comparison-table{
    overflow:hidden;
    border-radius:30px;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 24px 70px rgba(15,23,42,.08);
}
.comparison-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    border-bottom:1px solid #e5e7eb;
}
.comparison-row div{
    padding:22px 26px;
    font-weight:800;
}
.comparison-head div{
    background:#0f172a;
    color:#fff;
}
.comparison-head div + div{
    background:linear-gradient(135deg,#4f46e5,#7c3aed);
}
.marketing-cta{
    padding:64px 34px;
    text-align:center;
    border-radius:38px;
    background:linear-gradient(135deg,#111827,#1e1b4b 48%,#4f46e5);
    color:#fff;
}
.marketing-cta h2{
    font-size:50px;
    line-height:1;
    letter-spacing:-.06em;
}
.marketing-cta p{
    color:#dbeafe;
    font-size:17px;
}
@media(max-width:980px){
    .marketing-hero-grid,
    .feature-showcase,
    .platform-grid{
        grid-template-columns:1fr;
    }
    .marketing-hero-copy h1{
        font-size:52px;
    }
    .feature-showcase.reverse .feature-visual{
        order:0;
    }
}
@media(max-width:640px){
    .marketing-hero{
        padding:112px 18px 72px;
    }
    .marketing-hero-copy h1{
        font-size:40px;
    }
    .mockup-metrics,
    .feature-content ul,
    .comparison-row{
        grid-template-columns:1fr;
    }
}

/* Features V3 visual premium rebuild */
.features-hero-v3{
    padding:150px 24px 135px;
}

.features-hero-v3:before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-1px;
    height:150px;
    background:linear-gradient(180deg,rgba(255,255,255,0),#ffffff);
    z-index:1;
}

.features-hero-inner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr .9fr;
    gap:58px;
    align-items:center;
}

.features-hero-copy h1{
    margin:18px 0 18px;
    color:#fff;
    font-size:66px;
    line-height:.95;
    letter-spacing:-.075em;
}

.features-hero-copy p{
    max-width:720px;
    margin:0;
    color:#dbeafe;
    font-size:19px;
    line-height:1.72;
}

.features-hero-visual{
    position:relative;
    min-height:430px;
}

.growth-card{
    position:absolute;
    border-radius:30px;
    background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.08));
    border:1px solid rgba(255,255,255,.18);
    box-shadow:0 34px 100px rgba(0,0,0,.35);
    backdrop-filter:blur(18px);
    color:#fff;
}

.growth-card.large{
    inset:40px 40px 40px 0;
    padding:28px;
}

.growth-card.small{
    width:205px;
    padding:22px;
}

.growth-card.small.top{
    top:0;
    right:0;
}

.growth-card.small.bottom{
    right:25px;
    bottom:0;
}

.growth-card-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-bottom:30px;
}

.growth-card span,
.growth-card em{
    display:block;
    color:#cbd5e1;
    font-size:13px;
    font-weight:900;
    font-style:normal;
}

.growth-card strong{
    display:block;
    margin-top:8px;
    font-size:38px;
    line-height:1;
    letter-spacing:-.06em;
}

.growth-card-head strong{
    margin:0;
    color:#a5b4fc;
}

.growth-bars{
    height:250px;
    display:flex;
    align-items:flex-end;
    gap:16px;
    padding:20px;
    border-radius:24px;
    background:rgba(15,23,42,.32);
    border:1px solid rgba(255,255,255,.10);
}

.growth-bars i{
    flex:1;
    min-height:44px;
    border-radius:999px 999px 12px 12px;
    background:linear-gradient(180deg,#c4b5fd,#6366f1);
    box-shadow:0 12px 30px rgba(99,102,241,.28);
}

.features-business-strip{
    position:relative;
    z-index:4;
    margin-top:-62px;
    padding:0 24px 76px;
}

.business-strip-card{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:12px;
    padding:18px;
    border-radius:28px;
    background:#fff;
    border:1px solid #e8eaf5;
    box-shadow:0 28px 80px rgba(15,23,42,.12);
}

.business-strip-card div{
    padding:22px 14px;
    border-radius:20px;
    text-align:center;
    background:linear-gradient(180deg,#ffffff,#f8fafc);
    border:1px solid #e5e7eb;
}

.business-strip-card span{
    display:block;
    font-size:28px;
    margin-bottom:8px;
}

.business-strip-card strong{
    color:#0f172a;
    font-size:14px;
    font-weight:900;
}

.features-overview-v3{
    padding:84px 24px 96px;
    background:
        radial-gradient(circle at top left, rgba(79,70,229,.08), transparent 30%),
        #fff;
}

.feature-diagram{
    position:relative;
    min-height:560px;
    max-width:920px;
    margin:0 auto 58px;
    border-radius:40px;
    background:
        radial-gradient(circle at center, rgba(99,102,241,.18), transparent 28%),
        linear-gradient(180deg,#ffffff,#f8fafc);
    border:1px solid #e8eaf5;
    box-shadow:0 30px 90px rgba(15,23,42,.08);
    overflow:hidden;
}

.feature-diagram:before,
.feature-diagram:after{
    content:"";
    position:absolute;
    inset:78px;
    border:1px dashed rgba(99,102,241,.28);
    border-radius:50%;
}

.feature-diagram:after{
    inset:145px;
}

.diagram-center{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:230px;
    height:230px;
    display:grid;
    place-items:center;
    align-content:center;
    text-align:center;
    border-radius:50%;
    background:linear-gradient(135deg,#111827,#4f46e5);
    color:#fff;
    box-shadow:0 26px 70px rgba(79,70,229,.32);
    z-index:2;
}

.diagram-center strong{
    display:block;
    font-size:30px;
    letter-spacing:-.05em;
}

.diagram-center span{
    display:block;
    margin-top:8px;
    color:#dbeafe;
    font-size:13px;
    font-weight:900;
}

.diagram-node{
    position:absolute;
    z-index:3;
    width:172px;
    padding:18px;
    border-radius:24px;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 18px 52px rgba(15,23,42,.10);
    text-align:center;
}

.diagram-node span{
    display:block;
    font-size:28px;
    margin-bottom:8px;
}

.diagram-node strong{
    display:block;
    color:#0f172a;
    font-size:15px;
    font-weight:900;
}

.diagram-node.n1{left:70px;top:70px;}
.diagram-node.n2{right:70px;top:70px;}
.diagram-node.n3{left:24px;top:250px;}
.diagram-node.n4{right:24px;top:250px;}
.diagram-node.n5{left:120px;bottom:72px;}
.diagram-node.n6{right:120px;bottom:72px;}

.platform-card a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:18px;
    padding:11px 14px;
    border-radius:13px;
    background:#eef2ff;
    color:#4f46e5;
    text-decoration:none;
    font-size:13px;
    font-weight:900;
    transition:.18s ease;
}

.platform-card a:hover{
    background:#4f46e5;
    color:#fff;
    transform:translateY(-1px);
}

.features-flow-section{
    padding:96px 24px;
    background:#f8fafc;
}

.flow-lane{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:16px;
}

.flow-lane div{
    position:relative;
    padding:28px 22px;
    border-radius:26px;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 18px 52px rgba(15,23,42,.06);
}

.flow-lane span{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    margin-bottom:18px;
    border-radius:15px;
    background:linear-gradient(135deg,#4f46e5,#7c3aed);
    color:#fff;
    font-weight:900;
}

.flow-lane strong{
    display:block;
    color:#0f172a;
    font-size:18px;
    letter-spacing:-.03em;
}

.flow-lane p{
    margin:8px 0 0;
    color:#64748b;
    font-size:14px;
    line-height:1.6;
}

.features-chart-section{
    padding:96px 24px;
    background:#fff;
}

.chart-grid{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:42px;
    align-items:center;
}

.chart-copy h2{
    margin:14px 0 14px;
    color:#0f172a;
    font-size:48px;
    line-height:1.02;
    letter-spacing:-.06em;
}

.chart-copy p{
    margin:0 0 28px;
    color:#64748b;
    font-size:17px;
    line-height:1.75;
}

.analytics-board{
    padding:28px;
    border-radius:34px;
    background:linear-gradient(180deg,#111827,#1e1b4b);
    box-shadow:0 34px 100px rgba(15,23,42,.28);
}

.analytics-top{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-bottom:18px;
}

.analytics-top div{
    padding:20px;
    border-radius:20px;
    background:rgba(255,255,255,.09);
    border:1px solid rgba(255,255,255,.12);
}

.analytics-top strong{
    display:block;
    color:#fff;
    font-size:30px;
    letter-spacing:-.05em;
}

.analytics-top span{
    display:block;
    margin-top:5px;
    color:#cbd5e1;
    font-size:12px;
    font-weight:900;
}

.line-chart{
    height:300px;
    padding:24px;
    border-radius:24px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
}

.line-chart svg{
    width:100%;
    height:100%;
}

.line-chart polyline{
    fill:none;
    stroke:#a5b4fc;
    stroke-width:10;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.line-chart circle{
    fill:#fff;
    stroke:#6366f1;
    stroke-width:6;
}

.compact-cta{
    padding-top:56px;
}

.compact-cta .marketing-cta{
    padding:54px 34px;
}

.public-btn.primary,
.public-btn.secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:54px;
    padding:0 22px;
    border-radius:16px;
    font-weight:900;
    text-decoration:none;
}

.public-btn.primary{
    background:linear-gradient(135deg,#4f46e5,#7c3aed);
    color:#fff;
    box-shadow:0 18px 40px rgba(79,70,229,.28);
}

.public-btn.secondary{
    background:#fff;
    color:#0f172a;
    border:1px solid #e5e7eb;
    box-shadow:0 12px 28px rgba(15,23,42,.08);
}

.public-btn.primary:hover,
.public-btn.secondary:hover{
    transform:translateY(-2px);
}

@media(max-width:1050px){
    .features-hero-inner,
    .chart-grid{
        grid-template-columns:1fr;
    }

    .features-hero-copy{
        text-align:center;
    }

    .features-hero-copy p{
        margin:0 auto;
    }

    .features-hero-visual{
        max-width:660px;
        width:100%;
        margin:0 auto;
    }

    .business-strip-card,
    .flow-lane{
        grid-template-columns:repeat(2,1fr);
    }

    .feature-diagram{
        min-height:auto;
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:14px;
        padding:24px;
    }

    .feature-diagram:before,
    .feature-diagram:after{
        display:none;
    }

    .diagram-center,
    .diagram-node{
        position:static;
        transform:none;
        width:auto;
        height:auto;
        border-radius:24px;
    }

    .diagram-center{
        grid-column:1 / -1;
        padding:34px;
    }
}

@media(max-width:640px){
    .features-hero-v3{
        padding:112px 18px 100px;
    }

    .features-hero-copy h1{
        font-size:40px;
    }

    .features-hero-copy p{
        font-size:16px;
    }

    .features-hero-visual{
        min-height:360px;
    }

    .growth-card.large{
        inset:50px 0 35px 0;
    }

    .growth-card.small{
        width:170px;
    }

    .growth-card.small.top{
        right:0;
    }

    .growth-card.small.bottom{
        right:0;
    }

    .business-strip-card,
    .flow-lane,
    .feature-diagram,
    .analytics-top{
        grid-template-columns:1fr;
    }

    .chart-copy h2,
    .marketing-section-heading h2{
        font-size:34px;
    }

    .platform-grid{
        grid-template-columns:1fr;
    }
}

/* Hero RHS chart polish */
.marketing-dashboard-card{
    max-width:500px;
    margin-left:auto;
    padding:26px;
    border-radius:34px;
    background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.08));
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 34px 90px rgba(2,6,23,.35);
}

.marketing-dashboard-card:before{
    content:"RewardLoop Growth";
    display:block;
    margin-bottom:18px;
    color:#fff;
    font-size:15px;
    font-weight:900;
}

.mockup-metrics{
    grid-template-columns:repeat(3,1fr);
}

.mockup-panel{
    display:none;
}

.mockup-chart{
    height:230px;
    background:rgba(15,23,42,.38);
}

.mockup-chart:before{
    content:"Customer growth";
    position:absolute;
}

.mockup-chart span{
    box-shadow:0 10px 24px rgba(99,102,241,.32);
}

@media(max-width:980px){
    .marketing-dashboard-card{
        margin:28px auto 0;
    }
}

/* Features hero final polish */
.growth-visual-card{
    position:relative !important;
    display:block !important;
    max-width:540px !important;
    margin-left:auto !important;
    padding:24px !important;
    border-radius:34px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.075)) !important;
    border:1px solid rgba(255,255,255,.22) !important;
    box-shadow:0 34px 100px rgba(2,6,23,.42) !important;
    backdrop-filter:blur(18px) !important;
}

.growth-card-head{
    display:flex !important;
    justify-content:space-between !important;
    align-items:flex-start !important;
    gap:18px !important;
    margin-bottom:18px !important;
}

.growth-card-head span{
    display:block !important;
    color:#cbd5e1 !important;
    font-size:13px !important;
    font-weight:900 !important;
}

.growth-card-head strong{
    display:block !important;
    margin-top:4px !important;
    color:#fff !important;
    font-size:20px !important;
    letter-spacing:-.04em !important;
}

.growth-card-head em{
    font-style:normal !important;
    padding:8px 11px !important;
    border-radius:999px !important;
    background:rgba(34,197,94,.16) !important;
    color:#bbf7d0 !important;
    border:1px solid rgba(34,197,94,.28) !important;
    font-size:12px !important;
    font-weight:900 !important;
}

.growth-stats{
    display:grid !important;
    grid-template-columns:repeat(3,1fr) !important;
    gap:12px !important;
    margin-bottom:14px !important;
}

.growth-stats div{
    padding:18px !important;
    border-radius:20px !important;
    background:rgba(15,23,42,.35) !important;
    border:1px solid rgba(255,255,255,.14) !important;
}

.growth-stats strong{
    display:block !important;
    color:#fff !important;
    font-size:28px !important;
    letter-spacing:-.05em !important;
}

.growth-stats span{
    display:block !important;
    margin-top:5px !important;
    color:#cbd5e1 !important;
    font-size:12px !important;
    font-weight:800 !important;
}

.growth-chart-card{
    position:relative !important;
    height:255px !important;
    padding:22px !important;
    border-radius:26px !important;
    overflow:hidden !important;
    background:
        linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
        rgba(15,23,42,.42) !important;
    background-size:100% 52px, 70px 100%, auto !important;
    border:1px solid rgba(255,255,255,.14) !important;
}

.growth-chart-title{
    position:relative !important;
    z-index:3 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:900 !important;
}

.growth-line{
    position:absolute !important;
    left:28px !important;
    right:28px !important;
    bottom:68px !important;
    height:90px !important;
    border-bottom:5px solid #8b5cf6 !important;
    border-radius:60% 45% 30% 25% !important;
    transform:skewY(-11deg) !important;
    box-shadow:0 18px 30px rgba(139,92,246,.28) !important;
}

.growth-bars{
    position:absolute !important;
    left:24px !important;
    right:24px !important;
    bottom:22px !important;
    height:130px !important;
    display:flex !important;
    align-items:flex-end !important;
    gap:13px !important;
}

.growth-bars span{
    flex:1 !important;
    border-radius:16px 16px 8px 8px !important;
    background:linear-gradient(180deg,#c4b5fd,#6366f1) !important;
    box-shadow:0 14px 32px rgba(99,102,241,.34) !important;
}

.growth-bars span:nth-child(1){height:42% !important;}
.growth-bars span:nth-child(2){height:56% !important;}
.growth-bars span:nth-child(3){height:50% !important;}
.growth-bars span:nth-child(4){height:72% !important;}
.growth-bars span:nth-child(5){height:84% !important;}
.growth-bars span:nth-child(6){height:96% !important;}

.marketing-dashboard-card,
.mockup-topbar,
.mockup-metrics,
.mockup-panel,
.mockup-chart{
    display:none !important;
}

/* Impactful business type banner */
.marketing-trusted{
    margin-top:-76px !important;
    padding-bottom:78px !important;
}

.marketing-trusted .public-section-inner{
    max-width:1180px !important;
    padding:28px !important;
    border-radius:34px !important;
    background:rgba(255,255,255,.92) !important;
    border:1px solid rgba(226,232,240,.9) !important;
    box-shadow:0 30px 90px rgba(15,23,42,.16) !important;
    backdrop-filter:blur(18px) !important;
}

.marketing-trusted .section-kicker{
    text-align:center !important;
    margin:0 0 20px !important;
    color:#4f46e5 !important;
    font-weight:950 !important;
    letter-spacing:.08em !important;
    text-transform:uppercase !important;
}

.marketing-trusted .industry-grid{
    display:grid !important;
    grid-template-columns:repeat(6,1fr) !important;
    gap:12px !important;
}

.marketing-trusted .industry-grid div{
    min-height:130px !important;
    padding:18px 14px !important;
    border:0 !important;
    border-radius:22px !important;
    color:#fff !important;
    text-align:center !important;
    box-shadow:0 18px 40px rgba(15,23,42,.14) !important;
}

.marketing-trusted .industry-grid span{
    display:block !important;
    font-size:30px !important;
    margin-bottom:10px !important;
}

.marketing-trusted .industry-grid strong{
    display:block !important;
    color:#fff !important;
    font-size:15px !important;
    font-weight:950 !important;
}

.marketing-trusted .industry-grid small{
    display:block !important;
    margin-top:6px !important;
    color:rgba(255,255,255,.86) !important;
    font-size:11px !important;
    line-height:1.35 !important;
    font-weight:800 !important;
}

.industry-orange{background:linear-gradient(135deg,#f59e0b,#f97316) !important;}
.industry-red{background:linear-gradient(135deg,#ef4444,#f43f5e) !important;}
.industry-purple{background:linear-gradient(135deg,#8b5cf6,#6d28d9) !important;}
.industry-pink{background:linear-gradient(135deg,#ec4899,#be185d) !important;}
.industry-blue{background:linear-gradient(135deg,#3b82f6,#1d4ed8) !important;}
.industry-green{background:linear-gradient(135deg,#14b8a6,#059669) !important;}

@media(max-width:980px){
    .growth-visual-card{
        margin:32px auto 0 !important;
    }

    .marketing-trusted .industry-grid{
        grid-template-columns:repeat(3,1fr) !important;
    }
}

@media(max-width:640px){
    .growth-stats{
        grid-template-columns:1fr !important;
    }

    .marketing-trusted .industry-grid{
        grid-template-columns:1fr 1fr !important;
    }
}

/* Final hero chart + colorful business banner override */
.marketing-dashboard-card{
    display:block !important;
    position:relative !important;
    max-width:520px !important;
    min-height:360px !important;
    margin-left:auto !important;
    padding:26px !important;
    border-radius:34px !important;
    background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.07)) !important;
    border:1px solid rgba(255,255,255,.20) !important;
    box-shadow:0 34px 100px rgba(2,6,23,.42) !important;
    backdrop-filter:blur(18px) !important;
}

.marketing-dashboard-card:before{
    content:"Growth Overview";
    display:block;
    color:#fff;
    font-size:17px;
    font-weight:950;
    margin-bottom:18px;
}

.mockup-topbar,
.mockup-panel{
    display:none !important;
}

.mockup-metrics{
    display:grid !important;
    grid-template-columns:repeat(3,1fr) !important;
    gap:12px !important;
    margin-bottom:16px !important;
}

.mockup-metrics div{
    padding:17px !important;
    border-radius:20px !important;
    background:rgba(15,23,42,.38) !important;
    border:1px solid rgba(255,255,255,.14) !important;
}

.mockup-metrics strong{
    display:block !important;
    color:#fff !important;
    font-size:27px !important;
    line-height:1 !important;
}

.mockup-metrics span{
    display:block !important;
    margin-top:6px !important;
    color:#cbd5e1 !important;
    font-size:12px !important;
    font-weight:850 !important;
}

.mockup-chart{
    display:flex !important;
    position:relative !important;
    height:210px !important;
    margin-top:0 !important;
    padding:24px !important;
    align-items:flex-end !important;
    gap:14px !important;
    border-radius:26px !important;
    background:
        linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
        rgba(15,23,42,.44) !important;
    background-size:100% 52px, auto !important;
    border:1px solid rgba(255,255,255,.14) !important;
}

.mockup-chart:before{
    content:"Customer Growth";
    position:absolute;
    top:18px;
    left:22px;
    color:#fff;
    font-size:14px;
    font-weight:950;
}

.mockup-chart span{
    flex:1 !important;
    min-height:34px !important;
    border-radius:18px 18px 8px 8px !important;
    background:linear-gradient(180deg,#ddd6fe,#7c3aed) !important;
    box-shadow:0 16px 34px rgba(124,58,237,.34) !important;
}

/* hide replacement card if both exist */
.growth-visual-card{
    display:none !important;
}

/* colorful business banner */
.marketing-trusted .industry-grid div{
    min-height:132px !important;
    padding:18px 14px !important;
    border-radius:22px !important;
    color:#fff !important;
    text-align:center !important;
    border:0 !important;
    box-shadow:0 20px 42px rgba(15,23,42,.16) !important;
}

.marketing-trusted .industry-grid div:nth-child(1){
    background:linear-gradient(135deg,#f59e0b,#f97316) !important;
}

.marketing-trusted .industry-grid div:nth-child(2){
    background:linear-gradient(135deg,#ef4444,#f43f5e) !important;
}

.marketing-trusted .industry-grid div:nth-child(3){
    background:linear-gradient(135deg,#8b5cf6,#6d28d9) !important;
}

.marketing-trusted .industry-grid div:nth-child(4){
    background:linear-gradient(135deg,#ec4899,#be185d) !important;
}

.marketing-trusted .industry-grid div:nth-child(5){
    background:linear-gradient(135deg,#3b82f6,#1d4ed8) !important;
}

.marketing-trusted .industry-grid div:nth-child(6){
    background:linear-gradient(135deg,#14b8a6,#059669) !important;
}

.marketing-trusted .industry-grid span,
.marketing-trusted .industry-grid strong,
.marketing-trusted .industry-grid small{
    color:#fff !important;
}

.marketing-trusted .industry-grid span{
    display:block !important;
    font-size:31px !important;
    margin-bottom:10px !important;
}

.marketing-trusted .industry-grid strong{
    display:block !important;
    font-size:15px !important;
    font-weight:950 !important;
}

.marketing-trusted .industry-grid small{
    display:block !important;
    margin-top:6px !important;
    color:rgba(255,255,255,.86) !important;
    font-size:11px !important;
    line-height:1.35 !important;
    font-weight:800 !important;
}

@media(max-width:980px){
    .marketing-dashboard-card{
        margin:30px auto 0 !important;
    }

    .mockup-metrics{
        grid-template-columns:1fr !important;
    }
}

/* Features v3 final hero visual + business strip */
.features-hero-visual{
    position:relative;
}

.hero-analytics-card{
    position:relative;
    width:100%;
    max-width:560px;
    margin-left:auto;
    padding:24px;
    border-radius:34px;
    background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.075));
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 34px 100px rgba(2,6,23,.42);
    backdrop-filter:blur(18px);
}

.hero-analytics-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:16px;
    margin-bottom:16px;
}

.hero-analytics-head span{
    display:block;
    color:#cbd5e1;
    font-size:13px;
    font-weight:900;
}

.hero-analytics-head strong{
    display:block;
    margin-top:4px;
    color:#fff;
    font-size:20px;
    letter-spacing:-.04em;
}

.hero-analytics-head em{
    font-style:normal;
    padding:8px 11px;
    border-radius:999px;
    background:rgba(34,197,94,.16);
    color:#bbf7d0;
    border:1px solid rgba(34,197,94,.28);
    font-size:12px;
    font-weight:900;
}

.hero-metric-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-bottom:14px;
}

.hero-metric-grid div{
    padding:18px;
    border-radius:20px;
    background:rgba(15,23,42,.38);
    border:1px solid rgba(255,255,255,.14);
}

.hero-metric-grid small{
    display:block;
    color:#cbd5e1;
    font-size:11px;
    font-weight:900;
}

.hero-metric-grid strong{
    display:block;
    margin-top:9px;
    color:#fff;
    font-size:29px;
    line-height:1;
    letter-spacing:-.055em;
}

.hero-metric-grid span{
    display:block;
    margin-top:7px;
    color:#86efac;
    font-size:12px;
    font-weight:950;
}

.hero-line-chart{
    position:relative;
    height:240px;
    padding:22px;
    overflow:hidden;
    border-radius:26px;
    background:
        linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px),
        rgba(15,23,42,.44);
    background-size:100% 52px, 72px 100%, auto;
    border:1px solid rgba(255,255,255,.14);
}

.hero-chart-title{
    position:relative;
    z-index:2;
    color:#fff;
    font-size:14px;
    font-weight:950;
}

.hero-line-chart svg{
    position:absolute;
    inset:52px 24px 24px;
    width:calc(100% - 48px);
    height:calc(100% - 76px);
    overflow:visible;
}

.hero-line-chart polyline{
    fill:none;
    stroke:url(#heroLine);
    stroke-width:9;
    stroke-linecap:round;
    stroke-linejoin:round;
    filter:drop-shadow(0 16px 22px rgba(99,102,241,.45));
}

.growth-card{
    display:none !important;
}

.business-strip-card.business-strip-color{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:14px;
    padding:18px;
    border-radius:34px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(226,232,240,.9);
    box-shadow:0 30px 90px rgba(15,23,42,.16);
    backdrop-filter:blur(18px);
}

.business-strip-color .business-card{
    min-height:142px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    padding:20px 14px;
    border-radius:23px;
    text-align:center;
    color:#fff;
    box-shadow:0 20px 42px rgba(15,23,42,.16);
}

.business-strip-color .business-card span{
    display:block;
    font-size:34px;
    margin-bottom:11px;
}

.business-strip-color .business-card strong{
    display:block;
    color:#fff;
    font-size:15px;
    font-weight:950;
}

.business-strip-color .business-card small{
    display:block;
    max-width:130px;
    margin-top:7px;
    color:rgba(255,255,255,.88);
    font-size:11px;
    line-height:1.35;
    font-weight:800;
}

.business-card.coffee{background:linear-gradient(135deg,#f59e0b,#f97316);}
.business-card.restaurant{background:linear-gradient(135deg,#ef4444,#f43f5e);}
.business-card.retail{background:linear-gradient(135deg,#8b5cf6,#6d28d9);}
.business-card.salon{background:linear-gradient(135deg,#ec4899,#be185d);}
.business-card.gym{background:linear-gradient(135deg,#3b82f6,#1d4ed8);}
.business-card.service{background:linear-gradient(135deg,#14b8a6,#059669);}

@media(max-width:980px){
    .hero-analytics-card{
        margin:32px auto 0;
    }

    .hero-metric-grid{
        grid-template-columns:1fr;
    }

    .business-strip-card.business-strip-color{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:640px){
    .business-strip-card.business-strip-color{
        grid-template-columns:1fr 1fr;
        padding:12px;
    }

    .business-strip-color .business-card{
        min-height:126px;
    }
}

/* Features page color + mobile spacing polish */
.feature-diagram{
    background:
        radial-gradient(circle at center, rgba(99,102,241,.14), transparent 34%),
        linear-gradient(180deg,#ffffff,#f8fbff) !important;
    border:1px solid #e5e7eb !important;
    box-shadow:0 28px 90px rgba(79,70,229,.10) !important;
}

.diagram-center{
    background:linear-gradient(135deg,#4f46e5,#7c3aed,#2563eb) !important;
    box-shadow:0 24px 60px rgba(79,70,229,.28) !important;
}

.diagram-node{
    border:0 !important;
    color:#fff !important;
    box-shadow:0 18px 46px rgba(15,23,42,.16) !important;
}

.diagram-node span,
.diagram-node strong{
    color:#fff !important;
}

.diagram-node.n1{background:linear-gradient(135deg,#2563eb,#06b6d4) !important;}
.diagram-node.n2{background:linear-gradient(135deg,#f59e0b,#f97316) !important;}
.diagram-node.n3{background:linear-gradient(135deg,#ec4899,#be185d) !important;}
.diagram-node.n4{background:linear-gradient(135deg,#7c3aed,#4f46e5) !important;}
.diagram-node.n5{background:linear-gradient(135deg,#10b981,#059669) !important;}
.diagram-node.n6{background:linear-gradient(135deg,#14b8a6,#2563eb) !important;}

.platform-card{
    padding:26px !important;
}

.platform-card span{
    width:58px !important;
    height:58px !important;
    border-radius:18px !important;
    background:linear-gradient(135deg,#eef2ff,#f5f3ff) !important;
}

.flow-lane div{
    padding:26px !important;
}

@media(max-width:640px){
    .features-overview-v3,
    .features-flow-section,
    .features-chart-section,
    .comparison-section,
    .marketing-cta-section{
        padding-top:46px !important;
        padding-bottom:46px !important;
    }

    .marketing-section-heading{
        margin-bottom:26px !important;
    }

    .marketing-section-heading h2{
        font-size:32px !important;
        line-height:1.08 !important;
        letter-spacing:-.045em !important;
    }

    .marketing-section-heading p{
        font-size:15px !important;
        line-height:1.55 !important;
    }

    .feature-diagram{
        margin:20px 0 26px !important;
        padding:22px !important;
        min-height:auto !important;
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:12px !important;
    }

    .diagram-center{
        grid-column:1 / -1 !important;
        position:static !important;
        transform:none !important;
        width:auto !important;
        height:auto !important;
        min-height:110px !important;
        border-radius:28px !important;
    }

    .diagram-node{
        position:static !important;
        transform:none !important;
        width:auto !important;
        min-height:104px !important;
        padding:16px 12px !important;
        border-radius:22px !important;
    }

    .diagram-node span{
        font-size:24px !important;
        margin-bottom:8px !important;
    }

    .diagram-node strong{
        font-size:13px !important;
    }

    .platform-grid{
        gap:18px !important;
    }

    .platform-card{
        padding:24px !important;
        border-radius:26px !important;
    }

    .platform-card h3{
        font-size:24px !important;
        margin-bottom:10px !important;
    }

    .platform-card p{
        font-size:16px !important;
        line-height:1.55 !important;
    }

    .platform-card a{
        margin-top:18px !important;
        display:inline-flex !important;
        padding:12px 16px !important;
        border-radius:14px !important;
        background:#eef2ff !important;
        color:#4f46e5 !important;
        font-weight:900 !important;
        text-decoration:none !important;
    }

    .flow-lane{
        gap:16px !important;
    }

    .flow-lane div{
        padding:24px !important;
        border-radius:26px !important;
        min-height:auto !important;
    }

    .flow-lane div span{
        width:54px !important;
        height:54px !important;
        font-size:20px !important;
        margin-bottom:18px !important;
    }

    .flow-lane div strong{
        font-size:24px !important;
    }

    .flow-lane div p{
        margin-top:8px !important;
        font-size:16px !important;
        line-height:1.5 !important;
    }

    .public-section-inner{
        width:100% !important;
    }
}

/* Features mobile density + desktop CTA alignment */
@media(max-width:640px){
    .features-overview-v3,
    .features-flow-section{
        padding-top:34px !important;
        padding-bottom:34px !important;
    }

    .marketing-section-heading{
        margin-bottom:18px !important;
        padding:0 6px !important;
    }

    .marketing-section-heading h2{
        font-size:28px !important;
        line-height:1.05 !important;
        margin-bottom:10px !important;
    }

    .marketing-section-heading p{
        font-size:14px !important;
        line-height:1.45 !important;
    }

    .platform-grid{
        gap:14px !important;
    }

    .platform-card{
        padding:22px !important;
        border-radius:24px !important;
        min-height:auto !important;
    }

    .platform-card span{
        width:48px !important;
        height:48px !important;
        font-size:22px !important;
        margin-bottom:18px !important;
    }

    .platform-card h3{
        font-size:22px !important;
        line-height:1.12 !important;
    }

    .platform-card p{
        font-size:15px !important;
        line-height:1.45 !important;
        margin-bottom:16px !important;
    }

    .platform-card a{
        margin-top:8px !important;
        padding:10px 14px !important;
        font-size:14px !important;
    }

    .flow-lane{
        gap:14px !important;
    }

    .flow-lane div{
        padding:22px !important;
        border-radius:24px !important;
    }

    .flow-lane div span{
        width:50px !important;
        height:50px !important;
        margin-bottom:16px !important;
        border-radius:16px !important;
    }

    .flow-lane div strong{
        font-size:22px !important;
        line-height:1.15 !important;
    }

    .flow-lane div p{
        font-size:15px !important;
        line-height:1.42 !important;
    }
}

@media(min-width:981px){
    .marketing-cta .marketing-actions,
    .compact-cta .marketing-actions{
        justify-content:center !important;
        align-items:center !important;
    }

    .marketing-cta .public-btn{
        min-width:210px !important;
        justify-content:center !important;
        text-align:center !important;
    }
}

/* Final Features polish: workflow, cards, CTA */
.feature-diagram{
    min-height:auto !important;
    padding:34px !important;
    border-radius:38px !important;
    background:
        radial-gradient(circle at top left, rgba(79,70,229,.10), transparent 30%),
        linear-gradient(180deg,#ffffff,#f8fbff) !important;
}

.diagram-center,
.diagram-node{
    display:none !important;
}

.journey-flow{
    display:grid;
    grid-template-columns:1fr 34px 1fr 34px 1fr 34px 1fr 34px 1fr;
    align-items:center;
    gap:0;
}

.journey-flow div{
    min-height:178px;
    padding:24px 18px;
    border-radius:28px;
    text-align:center;
    color:#fff;
    box-shadow:0 20px 54px rgba(15,23,42,.14);
}

.journey-flow div:nth-of-type(1){background:linear-gradient(135deg,#2563eb,#06b6d4);}
.journey-flow div:nth-of-type(2){background:linear-gradient(135deg,#7c3aed,#4f46e5);}
.journey-flow div:nth-of-type(3){background:linear-gradient(135deg,#f59e0b,#f97316);}
.journey-flow div:nth-of-type(4){background:linear-gradient(135deg,#ec4899,#be185d);}
.journey-flow div:nth-of-type(5){background:linear-gradient(135deg,#14b8a6,#059669);}

.journey-flow div span{
    display:block;
    font-size:34px;
    margin-bottom:14px;
}

.journey-flow div strong{
    display:block;
    color:#fff;
    font-size:17px;
    font-weight:950;
}

.journey-flow div small{
    display:block;
    margin-top:8px;
    color:rgba(255,255,255,.86);
    font-size:12px;
    line-height:1.35;
    font-weight:800;
}

.journey-flow i{
    height:3px;
    background:linear-gradient(90deg,#c7d2fe,#8b5cf6);
    position:relative;
}

.journey-flow i:after{
    content:"";
    position:absolute;
    right:-2px;
    top:50%;
    width:10px;
    height:10px;
    border-top:3px solid #8b5cf6;
    border-right:3px solid #8b5cf6;
    transform:translateY(-50%) rotate(45deg);
}

.platform-card{
    transition:.2s ease !important;
}

.platform-card:hover{
    transform:translateY(-5px) !important;
    box-shadow:0 28px 76px rgba(79,70,229,.14) !important;
}

.platform-card a{
    text-decoration:none !important;
}

.platform-card a:after{
    content:" →";
}

.compact-cta .marketing-cta{
    padding:58px 34px !important;
}

.compact-cta .marketing-actions{
    justify-content:center !important;
}

.compact-cta .public-btn{
    min-width:220px !important;
    justify-content:center !important;
}

@media(max-width:980px){
    .journey-flow{
        grid-template-columns:1fr;
        gap:14px;
    }

    .journey-flow i{
        width:3px;
        height:24px;
        margin:0 auto;
    }

    .journey-flow i:after{
        right:auto;
        left:50%;
        top:auto;
        bottom:-2px;
        transform:translateX(-50%) rotate(135deg);
    }
}

@media(max-width:640px){
    .feature-diagram{
        padding:18px !important;
        border-radius:28px !important;
    }

    .journey-flow div{
        min-height:auto !important;
        padding:20px 18px !important;
        border-radius:22px !important;
    }

    .journey-flow div span{
        font-size:28px !important;
        margin-bottom:10px !important;
    }

    .journey-flow div strong{
        font-size:18px !important;
    }

    .journey-flow div small{
        font-size:12px !important;
    }

    .compact-cta .marketing-cta{
        padding:38px 22px !important;
    }

    .compact-cta .public-btn{
        width:100% !important;
        min-width:0 !important;
    }
}

/* Mobile-only workflow fix */
@media(max-width:640px){
    .feature-diagram{
        margin:18px 0 24px !important;
        padding:16px !important;
        border-radius:26px !important;
        overflow:hidden !important;
    }

    .journey-flow{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:10px !important;
        width:100% !important;
    }

    .journey-flow div{
        width:100% !important;
        min-height:auto !important;
        padding:18px 16px !important;
        border-radius:20px !important;
        text-align:left !important;
        display:grid !important;
        grid-template-columns:48px 1fr !important;
        column-gap:14px !important;
        align-items:center !important;
    }

    .journey-flow div span{
        grid-row:1 / span 2 !important;
        width:48px !important;
        height:48px !important;
        display:grid !important;
        place-items:center !important;
        margin:0 !important;
        border-radius:15px !important;
        background:rgba(255,255,255,.18) !important;
        font-size:24px !important;
    }

    .journey-flow div strong{
        font-size:18px !important;
        line-height:1.1 !important;
    }

    .journey-flow div small{
        margin-top:5px !important;
        font-size:12px !important;
    }

    .journey-flow i{
        width:3px !important;
        height:18px !important;
        margin:0 auto !important;
        background:#8b5cf6 !important;
        border-radius:999px !important;
    }

    .journey-flow i:after{
        width:8px !important;
        height:8px !important;
        border-top:3px solid #8b5cf6 !important;
        border-right:3px solid #8b5cf6 !important;
        bottom:-3px !important;
    }
}

/* Mobile workflow centering */
@media (max-width:640px){

    .journey-flow{
        justify-items:center !important;
    }

    .journey-flow div{
        width:min(100%,320px) !important;
        margin:0 auto !important;
    }

    .journey-flow i{
        justify-self:center !important;
        margin:0 auto !important;
    }

    .feature-diagram{
        display:flex !important;
        justify-content:center !important;
    }

}

/* Match Features hero background to homepage hero */
.features-hero-v3{
    background:
        radial-gradient(circle at 18% 22%, rgba(79,70,229,.42), transparent 30%),
        radial-gradient(circle at 82% 12%, rgba(14,165,233,.28), transparent 28%),
        linear-gradient(135deg,#020617 0%,#071235 42%,#111827 100%) !important;
}

.features-hero-v3:before{
    background:linear-gradient(180deg,rgba(255,255,255,0),#ffffff) !important;
}

.hero-analytics-card{
    background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.06)) !important;
}

@media(max-width:640px){
    .features-hero-v3{
        background:
            radial-gradient(circle at 18% 18%, rgba(79,70,229,.38), transparent 34%),
            radial-gradient(circle at 85% 10%, rgba(14,165,233,.24), transparent 32%),
            linear-gradient(135deg,#020617 0%,#071235 48%,#111827 100%) !important;
    }
}

/* Comparison section mobile redesign */
@media(max-width:760px){

    .comparison-table{
        display:block !important;
        border:0 !important;
        background:transparent !important;
        box-shadow:none !important;
    }

    .comparison-table thead{
        display:none !important;
    }

    .comparison-table tbody,
    .comparison-table tr,
    .comparison-table td{
        display:block !important;
        width:100% !important;
        border:0 !important;
    }

    .comparison-table tr{
        margin:0 0 18px !important;
        overflow:hidden;
        border-radius:22px !important;
        background:#fff;
        box-shadow:0 16px 40px rgba(15,23,42,.08);
    }

    .comparison-table td{
        padding:22px 24px !important;
    }

    .comparison-table td:first-child{
        background:#0f172a;
        color:#fff;
        font-size:20px;
        font-weight:900;
    }

    .comparison-table td:nth-child(2){
        background:linear-gradient(135deg,#6d28d9,#4f46e5);
        color:#fff;
        font-size:20px;
        font-weight:900;
    }

    .comparison-table td:first-child:before{
        content:"✕ Old Way";
        display:block;
        margin-bottom:12px;
        color:#fca5a5;
        font-size:12px;
        font-weight:900;
        text-transform:uppercase;
        letter-spacing:.08em;
    }

    .comparison-table td:nth-child(2):before{
        content:"✓ RewardLoop";
        display:block;
        margin-bottom:12px;
        color:#c7d2fe;
        font-size:12px;
        font-weight:900;
        text-transform:uppercase;
        letter-spacing:.08em;
    }

}


/* Mobile comparison accordion */
.comparison-mobile-accordion{
    display:none;
}

@media(max-width:640px){
    .comparison-desktop{
        display:none !important;
    }

    .comparison-mobile-accordion{
        display:grid;
        gap:12px;
    }

    .comparison-mobile-accordion details{
        overflow:hidden;
        border-radius:22px;
        background:#0f172a;
        border:1px solid rgba(148,163,184,.22);
        box-shadow:0 16px 42px rgba(15,23,42,.14);
    }

    .comparison-mobile-accordion summary{
        cursor:pointer;
        list-style:none;
        padding:20px 22px;
        color:#fff;
        font-size:17px;
        font-weight:950;
        display:flex;
        justify-content:space-between;
        align-items:center;
        gap:16px;
    }

    .comparison-mobile-accordion summary::-webkit-details-marker{
        display:none;
    }

    .comparison-mobile-accordion summary:after{
        content:"+";
        width:34px;
        height:34px;
        display:grid;
        place-items:center;
        border-radius:12px;
        background:linear-gradient(135deg,#4f46e5,#7c3aed);
        color:#fff;
        font-size:22px;
        line-height:1;
        flex:0 0 auto;
    }

    .comparison-mobile-accordion details[open] summary:after{
        content:"−";
    }

    .comparison-mobile-accordion details div{
        padding:0 22px 22px;
        color:#e5e7eb;
        font-size:16px;
        line-height:1.55;
        font-weight:800;
    }

    .comparison-mobile-accordion details div strong{
        color:#a78bfa;
        font-weight:950;
    }
}

/* Premium Pricing Page */
.pricing-hero{
    position:relative;
    overflow:hidden;
    padding:150px 24px 110px;
    color:#fff;
    background:
        radial-gradient(circle at 18% 22%, rgba(79,70,229,.42), transparent 30%),
        radial-gradient(circle at 82% 12%, rgba(14,165,233,.28), transparent 28%),
        linear-gradient(135deg,#020617 0%,#071235 42%,#111827 100%);
}

.pricing-hero:before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-1px;
    height:120px;
    background:linear-gradient(180deg,rgba(255,255,255,0),#ffffff);
    z-index:1;
}

.pricing-hero-inner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr 520px;
    gap:56px;
    align-items:center;
}

.pricing-hero-copy h1{
    margin:18px 0 18px;
    max-width:760px;
    font-size:64px;
    line-height:.95;
    letter-spacing:-.075em;
}

.pricing-hero-copy p{
    max-width:680px;
    margin:0;
    color:#cbd5e1;
    font-size:18px;
    line-height:1.7;
}

.pricing-visual-card{
    padding:24px;
    border-radius:34px;
    background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.06));
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 34px 100px rgba(2,6,23,.42);
    backdrop-filter:blur(18px);
}

.pricing-visual-head{
    display:flex;
    justify-content:space-between;
    gap:16px;
    margin-bottom:16px;
}

.pricing-visual-head span{
    display:block;
    color:#cbd5e1;
    font-size:13px;
    font-weight:900;
}

.pricing-visual-head strong{
    display:block;
    margin-top:4px;
    color:#fff;
    font-size:20px;
    letter-spacing:-.04em;
}

.pricing-visual-head em{
    height:max-content;
    padding:8px 11px;
    border-radius:999px;
    background:rgba(34,197,94,.16);
    color:#bbf7d0;
    border:1px solid rgba(34,197,94,.28);
    font-size:12px;
    font-style:normal;
    font-weight:900;
}

.pricing-metric-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-bottom:14px;
}

.pricing-metric-grid div{
    padding:17px;
    border-radius:20px;
    background:rgba(15,23,42,.38);
    border:1px solid rgba(255,255,255,.14);
}

.pricing-metric-grid small{
    color:#cbd5e1;
    font-size:11px;
    font-weight:900;
}

.pricing-metric-grid strong{
    display:block;
    margin-top:8px;
    color:#fff;
    font-size:28px;
    letter-spacing:-.05em;
}

.pricing-chart{
    position:relative;
    height:235px;
    display:flex;
    align-items:flex-end;
    gap:14px;
    padding:54px 24px 24px;
    border-radius:26px;
    background:
        linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
        rgba(15,23,42,.44);
    background-size:100% 52px, auto;
    border:1px solid rgba(255,255,255,.14);
}

.pricing-chart-title{
    position:absolute;
    top:20px;
    left:24px;
    color:#fff;
    font-size:14px;
    font-weight:950;
}

.pricing-chart span{
    flex:1;
    min-height:34px;
    border-radius:18px 18px 8px 8px;
    background:linear-gradient(180deg,#38bdf8,#7c3aed);
    box-shadow:0 16px 34px rgba(124,58,237,.34);
}

.pricing-plans-section,
.pricing-comparison-section,
.roi-section,
.pricing-faq-section{
    padding:90px 24px;
    background:#fff;
}

.pricing-comparison-section,
.pricing-faq-section{
    background:#f8fafc;
}

.pricing-v3-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}

.pricing-v3-card{
    position:relative;
    display:flex;
    flex-direction:column;
    padding:30px;
    border-radius:30px;
    background:#fff;
    border:1px solid #e8eaf5;
    box-shadow:0 22px 70px rgba(15,23,42,.08);
    transition:.2s ease;
}

.pricing-v3-card:hover{
    transform:translateY(-5px);
    box-shadow:0 30px 86px rgba(79,70,229,.14);
}

.pricing-v3-card.popular{
    border-color:#7c3aed;
    box-shadow:0 30px 90px rgba(124,58,237,.20);
}

.pricing-ribbon{
    position:absolute;
    top:18px;
    right:18px;
    padding:8px 11px;
    border-radius:999px;
    background:linear-gradient(135deg,#4f46e5,#7c3aed);
    color:#fff;
    font-size:11px;
    font-weight:950;
    text-transform:uppercase;
}

.pricing-ribbon.agency{
    background:linear-gradient(135deg,#06b6d4,#2563eb);
}

.plan-tag{
    display:inline-flex;
    width:max-content;
    padding:8px 11px;
    border-radius:999px;
    background:#eef2ff;
    color:#4f46e5;
    font-size:12px;
    font-weight:950;
    margin-bottom:18px;
}

.pricing-v3-card h3{
    margin:0 0 12px;
    color:#0f172a;
    font-size:28px;
    letter-spacing:-.045em;
}

.plan-price{
    color:#0f172a;
    font-size:48px;
    font-weight:950;
    letter-spacing:-.07em;
    margin-bottom:12px;
}

.plan-price span{
    color:#64748b;
    font-size:15px;
    letter-spacing:0;
}

.pricing-v3-card p{
    color:#64748b;
    line-height:1.6;
    margin:0 0 22px;
}

.pricing-v3-card ul{
    display:grid;
    gap:12px;
    padding:0;
    margin:0 0 26px;
    list-style:none;
}

.pricing-v3-card li{
    color:#334155;
    font-size:14px;
    font-weight:850;
}

.pricing-v3-card li:before{
    content:"✓";
    display:inline-grid;
    place-items:center;
    width:18px;
    height:18px;
    margin-right:8px;
    border-radius:50%;
    background:#dcfce7;
    color:#15803d;
    font-size:12px;
    font-weight:950;
}

.pricing-v3-card .public-btn{
    margin-top:auto;
    justify-content:center;
}

.pricing-feature-table{
    overflow:hidden;
    border-radius:30px;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 24px 70px rgba(15,23,42,.08);
}

.pricing-feature-row{
    display:grid;
    grid-template-columns:1.6fr repeat(4,1fr);
    border-bottom:1px solid #e5e7eb;
}

.pricing-feature-row:last-child{
    border-bottom:0;
}

.pricing-feature-row div{
    padding:18px 20px;
    color:#334155;
    font-weight:850;
    text-align:center;
}

.pricing-feature-row div:first-child{
    text-align:left;
}

.pricing-feature-row:not(.pricing-feature-head) div:not(:first-child){
    color:#16a34a;
    font-size:20px;
    font-weight:950;
}

.pricing-feature-head div{
    background:#0f172a;
    color:#fff;
    font-size:13px;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.pricing-feature-head div:nth-child(3){
    background:linear-gradient(135deg,#4f46e5,#7c3aed);
}

.pricing-mobile-accordion{
    display:none;
}

.roi-grid{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:34px;
    align-items:center;
}

.roi-copy h2{
    margin:14px 0 14px;
    color:#0f172a;
    font-size:48px;
    line-height:1.03;
    letter-spacing:-.06em;
}

.roi-copy p{
    max-width:560px;
    color:#64748b;
    font-size:17px;
    line-height:1.7;
    margin:0 0 26px;
}

.roi-calculator{
    padding:34px;
    border-radius:34px;
    color:#fff;
    background:
        radial-gradient(circle at top right, rgba(56,189,248,.28), transparent 34%),
        linear-gradient(135deg,#0f172a,#312e81);
    box-shadow:0 34px 100px rgba(79,70,229,.24);
}

.roi-calculator label{
    display:grid;
    gap:12px;
    margin-bottom:22px;
    color:#e5e7eb;
    font-weight:900;
}

.roi-calculator input{
    width:100%;
    accent-color:#8b5cf6;
}

.roi-result{
    margin-top:12px;
    padding:28px;
    border-radius:26px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.16);
}

.roi-result span,
.roi-result small{
    display:block;
    color:#cbd5e1;
    font-size:13px;
    font-weight:900;
}

.roi-result strong{
    display:block;
    margin:8px 0;
    color:#fff;
    font-size:54px;
    line-height:1;
    letter-spacing:-.07em;
}

.pricing-faq-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.pricing-faq-grid details{
    border-radius:24px;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 16px 42px rgba(15,23,42,.06);
    overflow:hidden;
}

.pricing-faq-grid summary{
    cursor:pointer;
    padding:22px 24px;
    color:#0f172a;
    font-size:17px;
    font-weight:950;
    list-style:none;
}

.pricing-faq-grid summary::-webkit-details-marker{
    display:none;
}

.pricing-faq-grid p{
    margin:0;
    padding:0 24px 24px;
    color:#64748b;
    line-height:1.6;
}

@media(max-width:1100px){
    .pricing-hero-inner,
    .pricing-v3-grid,
    .roi-grid{
        grid-template-columns:1fr;
    }

    .pricing-visual-card{
        max-width:620px;
        margin:0 auto;
    }

    .pricing-v3-grid{
        max-width:720px;
        margin:0 auto;
    }
}

@media(max-width:640px){
    .pricing-hero{
        padding:112px 18px 82px;
    }

    .pricing-hero-copy h1{
        font-size:40px;
        line-height:1;
    }

    .pricing-hero-copy p{
        font-size:16px;
    }

    .pricing-metric-grid{
        grid-template-columns:1fr;
    }

    .pricing-chart{
        height:190px;
    }

    .pricing-plans-section,
    .pricing-comparison-section,
    .roi-section,
    .pricing-faq-section{
        padding:48px 18px;
    }

    .pricing-feature-table{
        display:none;
    }

    .pricing-mobile-accordion{
        display:grid;
        gap:12px;
    }

    .pricing-mobile-accordion details{
        overflow:hidden;
        border-radius:22px;
        background:#0f172a;
        border:1px solid rgba(148,163,184,.22);
    }

    .pricing-mobile-accordion summary{
        cursor:pointer;
        list-style:none;
        padding:20px 22px;
        color:#fff;
        font-size:18px;
        font-weight:950;
    }

    .pricing-mobile-accordion div{
        padding:0 22px 22px;
        color:#e5e7eb;
        line-height:1.6;
        font-weight:800;
    }

    .pricing-faq-grid{
        grid-template-columns:1fr;
    }

    .roi-copy h2{
        font-size:34px;
    }

    .roi-result strong{
        font-size:42px;
    }
}

/* Pricing page spacing fix */
.pricing-plans-section{
    padding-top:56px !important;
    margin-top:-35px !important;
}

.pricing-plans-section .marketing-section-heading{
    margin-bottom:34px !important;
}

.pricing-v3-grid{
    min-height:0 !important;
    margin-top:0 !important;
}

.pricing-v3-card{
    min-height:560px !important;
}

@media(max-width:640px){
    .pricing-plans-section{
        padding-top:38px !important;
        margin-top:-18px !important;
    }

    .pricing-v3-card{
        min-height:auto !important;
    }
}

/* Premium FAQ Page */
.faq-hero{
    position:relative;
    overflow:hidden;
    padding:150px 24px 110px;
    color:#fff;
    background:
        radial-gradient(circle at 18% 22%, rgba(79,70,229,.42), transparent 30%),
        radial-gradient(circle at 82% 12%, rgba(14,165,233,.28), transparent 28%),
        linear-gradient(135deg,#020617 0%,#071235 42%,#111827 100%);
}

.faq-hero:before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-1px;
    height:120px;
    background:linear-gradient(180deg,rgba(255,255,255,0),#ffffff);
    z-index:1;
}

.faq-hero-inner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr 500px;
    gap:56px;
    align-items:center;
}

.faq-hero-copy h1{
    margin:18px 0;
    max-width:760px;
    font-size:64px;
    line-height:.95;
    letter-spacing:-.075em;
}

.faq-hero-copy p{
    max-width:660px;
    margin:0;
    color:#cbd5e1;
    font-size:18px;
    line-height:1.7;
}

.faq-visual-card{
    padding:24px;
    border-radius:34px;
    background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.06));
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 34px 100px rgba(2,6,23,.42);
    backdrop-filter:blur(18px);
}

.faq-visual-head span{
    display:block;
    color:#cbd5e1;
    font-size:13px;
    font-weight:900;
}

.faq-visual-head strong{
    display:block;
    margin-top:7px;
    color:#fff;
    font-size:24px;
    line-height:1.15;
    letter-spacing:-.045em;
}

.faq-search-mock{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin:22px 0 16px;
    padding:17px 18px;
    border-radius:20px;
    background:rgba(15,23,42,.42);
    border:1px solid rgba(255,255,255,.14);
}

.faq-search-mock span{
    color:#cbd5e1;
    font-weight:800;
}

.faq-search-mock strong{
    padding:6px 9px;
    border-radius:10px;
    background:rgba(255,255,255,.12);
    color:#fff;
    font-size:12px;
}

.faq-mini-list{
    display:grid;
    gap:12px;
}

.faq-mini-list div{
    display:grid;
    grid-template-columns:44px 1fr auto;
    align-items:center;
    gap:12px;
    padding:16px;
    border-radius:18px;
    background:rgba(255,255,255,.09);
    border:1px solid rgba(255,255,255,.13);
}

.faq-mini-list span{
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:linear-gradient(135deg,#4f46e5,#7c3aed);
    color:#fff;
    font-size:12px;
    font-weight:950;
}

.faq-mini-list strong{
    color:#fff;
    font-size:15px;
}

.faq-mini-list em{
    color:#cbd5e1;
    font-size:12px;
    font-style:normal;
    font-weight:800;
}

.faq-categories-section{
    position:relative;
    z-index:3;
    margin-top:-56px;
    padding:0 24px 70px;
    background:transparent;
}

.faq-category-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    padding:18px;
    border-radius:34px;
    background:rgba(255,255,255,.94);
    border:1px solid rgba(226,232,240,.9);
    box-shadow:0 30px 90px rgba(15,23,42,.16);
    backdrop-filter:blur(18px);
}

.faq-category-grid a{
    min-height:150px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:22px;
    border-radius:24px;
    color:#fff;
    text-decoration:none;
    box-shadow:0 20px 42px rgba(15,23,42,.15);
    transition:.2s ease;
}

.faq-category-grid a:hover{
    transform:translateY(-4px);
}

.faq-category-grid a:nth-child(1){background:linear-gradient(135deg,#2563eb,#06b6d4);}
.faq-category-grid a:nth-child(2){background:linear-gradient(135deg,#7c3aed,#4f46e5);}
.faq-category-grid a:nth-child(3){background:linear-gradient(135deg,#f59e0b,#f97316);}
.faq-category-grid a:nth-child(4){background:linear-gradient(135deg,#ec4899,#be185d);}

.faq-category-grid span{
    font-size:34px;
    margin-bottom:12px;
}

.faq-category-grid strong{
    color:#fff;
    font-size:18px;
    font-weight:950;
}

.faq-category-grid small{
    margin-top:8px;
    color:rgba(255,255,255,.86);
    font-size:12px;
    line-height:1.4;
    font-weight:800;
}

.faq-section{
    padding:90px 24px;
    background:#fff;
}

.faq-section.alt{
    background:#f8fafc;
}

.faq-layout{
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:46px;
    align-items:start;
}

.faq-side{
    position:sticky;
    top:110px;
}

.faq-side h2{
    margin:14px 0 14px;
    color:#0f172a;
    font-size:44px;
    line-height:1.03;
    letter-spacing:-.06em;
}

.faq-side p{
    margin:0;
    color:#64748b;
    font-size:17px;
    line-height:1.7;
}

.faq-accordion{
    display:grid;
    gap:14px;
}

.faq-accordion details{
    overflow:hidden;
    border-radius:24px;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 16px 42px rgba(15,23,42,.06);
}

.faq-section.alt .faq-accordion details{
    background:#fff;
}

.faq-accordion summary{
    cursor:pointer;
    list-style:none;
    padding:22px 24px;
    color:#0f172a;
    font-size:18px;
    font-weight:950;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
}

.faq-accordion summary::-webkit-details-marker{
    display:none;
}

.faq-accordion summary:after{
    content:"+";
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:linear-gradient(135deg,#4f46e5,#7c3aed);
    color:#fff;
    font-size:24px;
    line-height:1;
    flex:0 0 auto;
}

.faq-accordion details[open] summary:after{
    content:"−";
}

.faq-accordion p{
    margin:0;
    padding:0 24px 24px;
    color:#64748b;
    font-size:16px;
    line-height:1.65;
}

@media(max-width:980px){
    .faq-hero-inner,
    .faq-layout,
    .faq-category-grid{
        grid-template-columns:1fr;
    }

    .faq-visual-card{
        max-width:620px;
        margin:0 auto;
    }

    .faq-side{
        position:static;
    }
}

@media(max-width:640px){
    .faq-hero{
        padding:112px 18px 82px;
    }

    .faq-hero-copy h1{
        font-size:40px;
        line-height:1;
    }

    .faq-hero-copy p{
        font-size:16px;
    }

    .faq-categories-section{
        margin-top:-44px;
        padding:0 18px 46px;
    }

    .faq-category-grid{
        padding:12px;
        gap:12px;
    }

    .faq-category-grid a{
        min-height:128px;
        padding:20px;
    }

    .faq-section{
        padding:48px 18px;
    }

    .faq-side h2{
        font-size:32px;
    }

    .faq-accordion summary{
        padding:20px;
        font-size:17px;
    }

    .faq-accordion p{
        padding:0 20px 20px;
    }

    .faq-mini-list div{
        grid-template-columns:40px 1fr;
    }

    .faq-mini-list em{
        grid-column:2;
    }
}

/* Premium Contact Page */
.contact-hero{
    position:relative;
    overflow:hidden;
    padding:150px 24px 110px;
    color:#fff;
    background:
        radial-gradient(circle at 18% 22%, rgba(79,70,229,.42), transparent 30%),
        radial-gradient(circle at 82% 12%, rgba(14,165,233,.28), transparent 28%),
        linear-gradient(135deg,#020617 0%,#071235 42%,#111827 100%);
}

.contact-hero:before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:-1px;
    height:120px;
    background:linear-gradient(180deg,rgba(255,255,255,0),#ffffff);
    z-index:1;
}

.contact-hero-inner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr 500px;
    gap:56px;
    align-items:center;
}

.contact-hero-copy h1{
    margin:18px 0;
    max-width:760px;
    font-size:64px;
    line-height:.95;
    letter-spacing:-.075em;
}

.contact-hero-copy p{
    max-width:660px;
    margin:0;
    color:#cbd5e1;
    font-size:18px;
    line-height:1.7;
}

.contact-visual-card{
    padding:24px;
    border-radius:34px;
    background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.06));
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 34px 100px rgba(2,6,23,.42);
    backdrop-filter:blur(18px);
}

.contact-visual-head span{
    display:block;
    color:#cbd5e1;
    font-size:13px;
    font-weight:900;
}

.contact-visual-head strong{
    display:block;
    margin-top:7px;
    color:#fff;
    font-size:24px;
    line-height:1.15;
    letter-spacing:-.045em;
}

.contact-score-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin:22px 0 16px;
}

.contact-score-grid div{
    padding:17px;
    border-radius:20px;
    background:rgba(15,23,42,.38);
    border:1px solid rgba(255,255,255,.14);
}

.contact-score-grid small{
    color:#cbd5e1;
    font-size:11px;
    font-weight:900;
}

.contact-score-grid strong{
    display:block;
    margin-top:8px;
    color:#fff;
    font-size:26px;
    letter-spacing:-.05em;
}

.contact-timeline{
    display:grid;
    gap:12px;
}

.contact-timeline div{
    display:grid;
    grid-template-columns:44px 1fr;
    align-items:center;
    gap:12px;
    padding:16px;
    border-radius:18px;
    background:rgba(255,255,255,.09);
    border:1px solid rgba(255,255,255,.13);
}

.contact-timeline span{
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:linear-gradient(135deg,#4f46e5,#7c3aed);
    color:#fff;
    font-size:12px;
    font-weight:950;
}

.contact-timeline strong{
    color:#fff;
    font-size:15px;
}

.contact-cards-section{
    position:relative;
    z-index:3;
    margin-top:-56px;
    padding:0 24px 70px;
}

.contact-card-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    padding:18px;
    border-radius:34px;
    background:rgba(255,255,255,.94);
    border:1px solid rgba(226,232,240,.9);
    box-shadow:0 30px 90px rgba(15,23,42,.16);
    backdrop-filter:blur(18px);
}

.contact-card-grid div{
    min-height:150px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:22px;
    border-radius:24px;
    color:#fff;
    box-shadow:0 20px 42px rgba(15,23,42,.15);
}

.contact-card-grid div:nth-child(1){background:linear-gradient(135deg,#7c3aed,#4f46e5);}
.contact-card-grid div:nth-child(2){background:linear-gradient(135deg,#2563eb,#06b6d4);}
.contact-card-grid div:nth-child(3){background:linear-gradient(135deg,#14b8a6,#059669);}
.contact-card-grid div:nth-child(4){background:linear-gradient(135deg,#f59e0b,#f97316);}

.contact-card-grid span{
    font-size:34px;
    margin-bottom:12px;
}

.contact-card-grid strong{
    color:#fff;
    font-size:18px;
    font-weight:950;
}

.contact-card-grid p{
    margin:8px 0 0;
    color:rgba(255,255,255,.86);
    font-size:12px;
    line-height:1.4;
    font-weight:800;
}

.contact-form-section{
    padding:90px 24px;
    background:#fff;
}

.contact-form-grid{
    display:grid;
    grid-template-columns:.85fr 1.15fr;
    gap:44px;
    align-items:start;
}

.contact-form-copy h2{
    margin:14px 0;
    color:#0f172a;
    font-size:48px;
    line-height:1.03;
    letter-spacing:-.06em;
}

.contact-form-copy p{
    margin:0 0 26px;
    color:#64748b;
    font-size:17px;
    line-height:1.7;
}

.contact-proof-list{
    display:grid;
    gap:14px;
}

.contact-proof-list div{
    display:grid;
    grid-template-columns:54px 1fr;
    gap:14px;
    align-items:center;
    padding:18px;
    border-radius:22px;
    background:#f8fafc;
    border:1px solid #e5e7eb;
}

.contact-proof-list span{
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    border-radius:18px;
    background:#eef2ff;
    font-size:24px;
}

.contact-proof-list strong{
    display:block;
    color:#0f172a;
    font-weight:950;
}

.contact-proof-list small{
    display:block;
    margin-top:4px;
    color:#64748b;
    font-weight:800;
}

.contact-form-card{
    display:grid;
    gap:16px;
    padding:32px;
    border-radius:34px;
    background:linear-gradient(180deg,#ffffff,#f8fafc);
    border:1px solid #e8eaf5;
    box-shadow:0 28px 90px rgba(79,70,229,.12);
}

.contact-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.contact-form-card label{
    display:grid;
    gap:8px;
    color:#0f172a;
    font-size:14px;
    font-weight:900;
}

.contact-form-card input,
.contact-form-card select,
.contact-form-card textarea{
    width:100%;
    min-height:56px;
    padding:14px 16px;
    border:1px solid #e5e7eb;
    border-radius:16px;
    background:#fff;
    color:#0f172a;
    outline:none;
    transition:.18s ease;
}

.contact-form-card textarea{
    min-height:150px;
    resize:vertical;
}

.contact-form-card input:focus,
.contact-form-card select:focus,
.contact-form-card textarea:focus{
    border-color:#6366f1;
    box-shadow:0 0 0 4px rgba(99,102,241,.10);
}

.contact-submit{
    width:100%;
    justify-content:center;
    border:0;
    cursor:pointer;
}

.contact-success,
.contact-error{
    padding:15px 16px;
    border-radius:16px;
    font-weight:900;
}

.contact-success{
    background:#dcfce7;
    color:#166534;
}

.contact-error{
    background:#fee2e2;
    color:#991b1b;
}

@media(max-width:980px){
    .contact-hero-inner,
    .contact-form-grid,
    .contact-card-grid{
        grid-template-columns:1fr;
    }

    .contact-visual-card{
        max-width:620px;
        margin:0 auto;
    }
}

@media(max-width:640px){
    .contact-hero{
        padding:112px 18px 82px;
    }

    .contact-hero-copy h1{
        font-size:40px;
        line-height:1;
    }

    .contact-hero-copy p{
        font-size:16px;
    }

    .contact-score-grid,
    .contact-form-row{
        grid-template-columns:1fr;
    }

    .contact-cards-section{
        margin-top:-44px;
        padding:0 18px 46px;
    }

    .contact-card-grid{
        padding:12px;
        gap:12px;
    }

    .contact-card-grid div{
        min-height:126px;
    }

    .contact-form-section{
        padding:48px 18px;
    }

    .contact-form-copy h2{
        font-size:34px;
    }

    .contact-form-card{
        padding:22px;
        border-radius:26px;
    }
}

/* Contact proof cards polish */
.contact-proof-list{
    display:grid !important;
    gap:18px !important;
    margin-top:28px !important;
}

.contact-proof-list div{
    position:relative !important;
    display:grid !important;
    grid-template-columns:76px 1fr !important;
    align-items:center !important;
    gap:20px !important;
    padding:24px !important;
    border:0 !important;
    border-radius:28px !important;
    overflow:hidden !important;
    color:#fff !important;
    box-shadow:0 24px 60px rgba(15,23,42,.18) !important;
}

.contact-proof-list div:before{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    background:
        radial-gradient(circle at top right, rgba(255,255,255,.22), transparent 40%),
        radial-gradient(circle at bottom left, rgba(255,255,255,.12), transparent 38%) !important;
    pointer-events:none !important;
}

.contact-proof-list div:nth-child(1){
    background:linear-gradient(135deg,#2563eb,#06b6d4) !important;
}

.contact-proof-list div:nth-child(2){
    background:linear-gradient(135deg,#7c3aed,#4f46e5) !important;
}

.contact-proof-list div:nth-child(3){
    background:linear-gradient(135deg,#ec4899,#db2777) !important;
}

.contact-proof-list span{
    position:relative !important;
    z-index:2 !important;
    width:76px !important;
    height:76px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:22px !important;
    background:rgba(255,255,255,.18) !important;
    color:#fff !important;
    font-size:32px !important;
}

.contact-proof-list strong,
.contact-proof-list small{
    position:relative !important;
    z-index:2 !important;
}

.contact-proof-list strong{
    display:block !important;
    color:#fff !important;
    font-size:24px !important;
    font-weight:950 !important;
    margin-bottom:6px !important;
}

.contact-proof-list small{
    display:block !important;
    color:rgba(255,255,255,.88) !important;
    font-size:15px !important;
    line-height:1.5 !important;
    font-weight:800 !important;
}

@media(max-width:640px){
    .contact-proof-list div{
        grid-template-columns:1fr !important;
        text-align:center !important;
        justify-items:center !important;
        padding:24px 20px !important;
    }

    .contact-proof-list strong{
        font-size:21px !important;
    }
}

/* Contact section size + alignment fix */
.contact-form-section{
    padding:70px 24px !important;
}

.contact-form-grid{
    grid-template-columns:.92fr 1.08fr !important;
    gap:34px !important;
    align-items:start !important;
}

.contact-form-copy h2{
    font-size:44px !important;
    margin-bottom:12px !important;
}

.contact-form-copy p{
    max-width:560px !important;
    margin-bottom:22px !important;
}

.contact-proof-list{
    max-width:520px !important;
    gap:14px !important;
}

.contact-proof-list div{
    min-height:132px !important;
    grid-template-columns:64px 1fr !important;
    gap:16px !important;
    padding:20px 22px !important;
    border-radius:24px !important;
}

.contact-proof-list span{
    width:64px !important;
    height:64px !important;
    border-radius:18px !important;
    font-size:28px !important;
}

.contact-proof-list strong{
    font-size:21px !important;
    margin-bottom:4px !important;
}

.contact-proof-list small{
    font-size:14px !important;
    line-height:1.35 !important;
}

.contact-form-card{
    max-width:620px !important;
    margin-left:auto !important;
    padding:28px !important;
    border-radius:30px !important;
}

.contact-form-card input,
.contact-form-card select{
    min-height:52px !important;
}

.contact-form-card textarea{
    min-height:130px !important;
}

@media(max-width:980px){
    .contact-form-grid{
        grid-template-columns:1fr !important;
    }

    .contact-proof-list,
    .contact-form-card{
        max-width:none !important;
        margin-left:0 !important;
    }
}

@media(max-width:640px){
    .contact-form-section{
        padding:44px 18px !important;
    }

    .contact-form-copy h2{
        font-size:32px !important;
    }

    .contact-proof-list div{
        min-height:auto !important;
        grid-template-columns:52px 1fr !important;
        text-align:left !important;
        justify-items:start !important;
        padding:18px !important;
    }

    .contact-proof-list span{
        width:52px !important;
        height:52px !important;
        font-size:24px !important;
    }

    .contact-proof-list strong{
        font-size:19px !important;
    }

    .contact-proof-list small{
        font-size:13px !important;
    }
}

/* Contact proof text alignment fix */
.contact-proof-list div{
    display:flex !important;
    align-items:center !important;
    gap:22px !important;
    padding:22px 26px !important;
    min-height:120px !important;
}

.contact-proof-list span{
    width:64px !important;
    height:64px !important;
    flex-shrink:0 !important;
}

.contact-proof-list strong{
    display:block !important;
    margin:0 0 6px !important;
    font-size:24px !important;
}

.contact-proof-list small{
    display:block !important;
    font-size:15px !important;
    line-height:1.5 !important;
    max-width:320px !important;
}

@media(max-width:640px){
    .contact-proof-list div{
        display:flex !important;
        align-items:center !important;
        text-align:left !important;
        gap:18px !important;
    }

    .contact-proof-list span{
        width:56px !important;
        height:56px !important;
    }

    .contact-proof-list strong{
        font-size:20px !important;
    }

    .contact-proof-list small{
        max-width:none !important;
    }
}

/* ==========================
   ABOUT PAGE
========================== */

.about-hero{
    background:
        radial-gradient(circle at top right,#818cf822 0%,transparent 45%),
        radial-gradient(circle at bottom left,#3b82f622 0%,transparent 45%);
}

.about-hero-card{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:40px;
    box-shadow:0 30px 80px rgba(15,23,42,.08);
    text-align:center;
}

.about-hero-card span{
    width:72px;
    height:72px;
    display:grid;
    place-items:center;
    margin:0 auto 22px;
    border-radius:22px;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    color:#fff;
    font-size:34px;
}

.about-hero-card h2{
    margin:0;
    font-size:30px;
}

.about-hero-card p{
    margin:16px 0 28px;
    color:#64748b;
    line-height:1.7;
}

.about-hero-stats{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.about-hero-stats div{
    padding:18px;
    background:#f8fafc;
    border-radius:18px;
}

.about-hero-stats strong{
    display:block;
    font-size:22px;
    color:#0f172a;
}

.about-hero-stats small{
    color:#64748b;
}

.about-section{
    padding:90px 24px;
}

.about-muted{
    background:#f8fafc;
}

.about-dark{
    background:#0f172a;
    color:#fff;
}

.about-dark p,
.about-dark .section-kicker{
    color:#cbd5e1;
}

.about-split{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:center;
}

.about-grid{
    margin-top:50px;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:28px;
}

.about-card{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:24px;
    padding:34px;
    transition:.25s;
}

.about-card:hover{
    transform:translateY(-6px);
    box-shadow:0 24px 60px rgba(15,23,42,.08);
}

.about-card span{
    font-size:34px;
    display:block;
    margin-bottom:16px;
}

.about-card h3{
    margin:0 0 12px;
}

.about-card p{
    color:#64748b;
    line-height:1.7;
}

.values-grid{
    margin-top:50px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

.values-grid div{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:22px;
    padding:30px;
}

.values-grid strong{
    display:block;
    margin-bottom:12px;
    font-size:20px;
}

.values-grid p{
    color:#64748b;
    line-height:1.7;
}

.about-security{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:start;
}

.security-list{
    display:grid;
    gap:18px;
}

.security-list div{
    padding:18px 22px;
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:16px;
    font-weight:600;
}

@media (max-width:900px){

.about-split,
.about-security,
.about-grid,
.values-grid,
.about-hero-stats{
    grid-template-columns:1fr;
}

.about-hero-card{
    margin-top:40px;
}

}

/* ==========================
   ABOUT PAGE PREMIUM
========================== */

.about-page-hero{
    background:
        radial-gradient(circle at 12% 10%,rgba(59,130,246,.20),transparent 34%),
        radial-gradient(circle at 88% 22%,rgba(124,58,237,.22),transparent 36%),
        linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
}

.about-story-premium,
.about-principles-premium,
.about-security-premium{
    padding:96px 0;
}

.about-story-premium{
    background:#fff;
}

.about-story-premium-grid,
.about-security-premium-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:56px;
    align-items:center;
}

.about-story-copy h2,
.about-security-premium h2{
    margin:14px 0 18px;
    color:#0f172a;
    font-size:clamp(34px,4vw,56px);
    line-height:1.02;
    letter-spacing:-.055em;
}

.about-story-copy p,
.about-security-premium p{
    margin:0 0 16px;
    color:#64748b;
    font-size:17px;
    line-height:1.75;
}

.about-timeline-premium{
    position:relative;
    display:grid;
    gap:18px;
}

.about-timeline-premium:before{
    content:"";
    position:absolute;
    left:31px;
    top:30px;
    bottom:30px;
    width:2px;
    background:linear-gradient(180deg,#2563eb,#7c3aed);
    opacity:.28;
}

.about-timeline-premium div{
    position:relative;
    display:grid;
    grid-template-columns:64px 1fr;
    column-gap:18px;
    padding:24px;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:24px;
    box-shadow:0 20px 60px rgba(15,23,42,.06);
}

.about-timeline-premium span{
    position:relative;
    z-index:2;
    width:64px;
    height:64px;
    display:grid;
    place-items:center;
    border-radius:20px;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    color:#fff;
    font-weight:900;
}

.about-timeline-premium strong{
    display:block;
    margin:4px 0 8px;
    color:#0f172a;
    font-size:20px;
    letter-spacing:-.03em;
}

.about-timeline-premium p{
    grid-column:2;
    margin:0;
    color:#64748b;
    line-height:1.65;
}

.about-principles-premium{
    background:#f8fafc;
}

.about-principles-premium-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    margin-top:46px;
}

.about-principles-premium-grid div{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:32px;
    box-shadow:0 22px 60px rgba(15,23,42,.06);
    transition:.25s ease;
}

.about-principles-premium-grid div:hover{
    transform:translateY(-6px);
    box-shadow:0 30px 80px rgba(15,23,42,.10);
}

.about-principles-premium-grid span{
    width:56px;
    height:56px;
    display:grid;
    place-items:center;
    margin-bottom:18px;
    border-radius:18px;
    background:#eef2ff;
    font-size:26px;
}

.about-principles-premium-grid h3{
    margin:0 0 10px;
    color:#0f172a;
    font-size:22px;
    letter-spacing:-.035em;
}

.about-principles-premium-grid p{
    margin:0;
    color:#64748b;
    line-height:1.7;
}

.about-security-premium{
    background:
        radial-gradient(circle at 10% 0%,rgba(37,99,235,.12),transparent 36%),
        radial-gradient(circle at 90% 30%,rgba(124,58,237,.12),transparent 35%),
        #fff;
}

.about-security-premium-card{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}

.about-security-premium-card div{
    padding:20px 22px;
    border-radius:20px;
    background:#fff;
    border:1px solid #e5e7eb;
    color:#0f172a;
    font-weight:800;
    box-shadow:0 20px 60px rgba(15,23,42,.06);
}

@media (max-width:900px){
    .about-story-premium,
    .about-principles-premium,
    .about-security-premium{
        padding:74px 0;
    }

    .about-story-premium-grid,
    .about-security-premium-grid{
        grid-template-columns:1fr;
        gap:36px;
    }

    .about-principles-premium-grid,
    .about-security-premium-card{
        grid-template-columns:1fr;
    }

    .about-timeline-premium div{
        grid-template-columns:54px 1fr;
        padding:20px;
    }

    .about-timeline-premium span{
        width:54px;
        height:54px;
        border-radius:18px;
    }
}

/* ==========================
   ABOUT PAGE PATCH
   spacing + hero chart fix
========================== */

.about-page-hero{
    padding-bottom:90px !important;
    min-height:auto !important;
}

.about-page-hero .hero-line-chart{
    display:flex !important;
    align-items:flex-end !important;
    gap:14px !important;
    min-height:190px !important;
    padding:54px 24px 24px !important;
    position:relative !important;
    overflow:hidden !important;
}

.about-page-hero .hero-line-chart span{
    display:block !important;
    flex:1 !important;
    min-width:24px !important;
    border-radius:14px 14px 4px 4px !important;
    background:linear-gradient(180deg,#60a5fa,#7c3aed) !important;
    box-shadow:0 14px 30px rgba(37,99,235,.22) !important;
}

.about-page-hero .hero-chart-title{
    position:absolute !important;
    top:20px !important;
    left:24px !important;
    z-index:2 !important;
}

.about-story-premium,
.about-principles-premium,
.about-security-premium{
    padding:76px 0 !important;
}

.about-story-premium{
    margin-top:0 !important;
}

.features-overview-v3,
.features-business-strip,
.comparison-section{
    padding-top:76px !important;
    padding-bottom:76px !important;
}

.about-principles-premium-grid{
    margin-top:34px !important;
}

.platform-grid{
    margin-top:34px !important;
}

.business-strip-card{
    margin-top:34px !important;
}

.comparison-table{
    margin-top:34px !important;
}

.marketing-cta-section.compact-cta{
    padding-top:76px !important;
    padding-bottom:76px !important;
}

.about-security-premium{
    padding-bottom:70px !important;
}

.about-story-copy h2,
.about-security-premium h2{
    font-size:clamp(38px,4.8vw,64px) !important;
}

.about-timeline-premium div{
    min-height:118px !important;
}

.about-timeline-premium strong{
    align-self:end !important;
}

@media (max-width:900px){
    .about-page-hero{
        padding-bottom:70px !important;
    }

    .about-story-premium,
    .about-principles-premium,
    .about-security-premium,
    .features-overview-v3,
    .features-business-strip,
    .comparison-section,
    .marketing-cta-section.compact-cta{
        padding-top:58px !important;
        padding-bottom:58px !important;
    }

    .about-page-hero .hero-line-chart{
        min-height:150px !important;
    }
}

/* ABOUT principles spacing tighten */
.about-principles-premium{
    padding-top:58px !important;
    padding-bottom:48px !important;
}

.about-principles-premium .marketing-section-heading{
    margin-bottom:26px !important;
}

.about-principles-premium-grid{
    margin-top:26px !important;
    gap:18px !important;
}

.about-principles-premium-grid div{
    min-height:170px !important;
    padding:26px !important;
}

.comparison-section{
    padding-top:46px !important;
}

.comparison-section .marketing-section-heading{
    margin-bottom:26px !important;
}

@media (max-width:900px){
    .about-principles-premium{
        padding-top:44px !important;
        padding-bottom:36px !important;
    }

    .comparison-section{
        padding-top:36px !important;
    }
}

/* ABOUT mobile edge padding fixes */
@media (max-width:700px){

    .about-story-premium .public-section-inner,
    .about-principles-premium .public-section-inner,
    .comparison-section .public-section-inner,
    .about-security-premium .public-section-inner{
        width:100% !important;
        padding-left:22px !important;
        padding-right:22px !important;
        box-sizing:border-box !important;
    }

    .about-story-copy h2,
    .about-security-premium h2,
    .comparison-section .marketing-section-heading h2,
    .about-principles-premium .marketing-section-heading h2{
        font-size:42px !important;
        line-height:1.05 !important;
        letter-spacing:-.055em !important;
    }

    .about-story-copy p,
    .about-security-premium p,
    .comparison-section .marketing-section-heading p,
    .about-principles-premium .marketing-section-heading p{
        font-size:20px !important;
        line-height:1.65 !important;
    }

    .about-timeline-premium div{
        grid-template-columns:74px 1fr !important;
        padding:26px 24px !important;
        border-radius:24px !important;
    }

    .about-timeline-premium span{
        width:58px !important;
        height:58px !important;
        font-size:20px !important;
    }

    .about-timeline-premium strong{
        font-size:26px !important;
        line-height:1.15 !important;
    }

    .about-timeline-premium p{
        font-size:20px !important;
        line-height:1.55 !important;
    }

    .about-principles-premium-grid div{
        padding:28px !important;
        border-radius:26px !important;
    }

    .about-security-premium-card{
        gap:16px !important;
    }

    .about-security-premium-card div{
        padding:24px 26px !important;
        border-radius:22px !important;
        font-size:20px !important;
        line-height:1.25 !important;
    }

    .about-security-premium .public-btn{
        width:auto !important;
        max-width:260px !important;
    }
}

/* ==========================================
   BOOK DEMO
========================================== */

.demo-page-hero{
    background:
        radial-gradient(circle at 12% 12%,rgba(37,99,235,.18),transparent 34%),
        radial-gradient(circle at 88% 18%,rgba(124,58,237,.20),transparent 36%),
        linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
}

.demo-four-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.demo-process-section{
    padding:88px 0;
    background:#f8fafc;
}

.demo-process-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    margin-top:46px;
}

.demo-process-grid div{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:34px;
    box-shadow:0 22px 60px rgba(15,23,42,.06);
    transition:.25s;
}

.demo-process-grid div:hover{
    transform:translateY(-6px);
    box-shadow:0 30px 80px rgba(15,23,42,.10);
}

.demo-process-grid span{
    width:58px;
    height:58px;
    display:grid;
    place-items:center;
    border-radius:18px;
    margin-bottom:18px;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    color:#fff;
    font-weight:800;
}

.demo-process-grid h3{
    margin:0 0 12px;
    color:#0f172a;
    font-size:24px;
    letter-spacing:-.03em;
}

.demo-process-grid p{
    margin:0;
    color:#64748b;
    line-height:1.7;
}

.demo-benefits-section{
    padding-top:88px;
}

.demo-faq-section{
    padding-top:88px;
    padding-bottom:88px;
}

@media (max-width:900px){

    .demo-four-grid,
    .demo-process-grid{
        grid-template-columns:1fr;
    }

    .demo-process-section,
    .demo-benefits-section,
    .demo-faq-section{
        padding-top:64px;
        padding-bottom:64px;
    }

}

/* BOOK DEMO final chart fix */
.demo-page-hero .hero-line-chart{
    position:relative !important;
    display:flex !important;
    align-items:flex-end !important;
    gap:14px !important;
    min-height:190px !important;
    margin-top:26px !important;
    padding:54px 24px 24px !important;
    overflow:hidden !important;
}

.demo-page-hero .hero-line-chart span{
    display:block !important;
    flex:1 !important;
    min-width:24px !important;
    border-radius:14px 14px 4px 4px !important;
    background:linear-gradient(180deg,#60a5fa,#7c3aed) !important;
    box-shadow:0 14px 30px rgba(37,99,235,.22) !important;
}

.demo-page-hero .hero-chart-title{
    position:absolute !important;
    top:20px !important;
    left:24px !important;
    z-index:2 !important;
    color:#fff !important;
    font-weight:900 !important;
}

/* BOOK DEMO hero card proportions */

.demo-page-hero .hero-metric-grid{
    gap:14px !important;
}

.demo-page-hero .hero-metric-grid div{
    padding:18px !important;
    min-height:112px !important;
    border-radius:18px !important;
}

.demo-page-hero .hero-metric-grid small{
    font-size:13px !important;
}

.demo-page-hero .hero-metric-grid strong{
    font-size:26px !important;
    line-height:1.05 !important;
}

.demo-page-hero .hero-line-chart{
    margin-top:18px !important;
    min-height:210px !important;
}

.demo-page-hero .hero-analytics-card{
    padding:28px !important;
}

/* BOOK DEMO force compact hero metrics */
.demo-page-hero .hero-analytics-card .hero-metric-grid{
    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;
    gap:10px !important;
    margin-top:22px !important;
}

.demo-page-hero .hero-analytics-card .hero-metric-grid div{
    height:82px !important;
    min-height:82px !important;
    padding:12px 14px !important;
    border-radius:16px !important;
}

.demo-page-hero .hero-analytics-card .hero-metric-grid small{
    font-size:11px !important;
    line-height:1.1 !important;
    margin-bottom:8px !important;
}

.demo-page-hero .hero-analytics-card .hero-metric-grid strong{
    font-size:22px !important;
    line-height:1 !important;
    letter-spacing:-.04em !important;
}

.demo-page-hero .hero-analytics-card .hero-line-chart{
    margin-top:18px !important;
    min-height:240px !important;
}

.demo-page-hero .hero-analytics-card{
    padding:30px !important;
}

@media (max-width:900px){
    .demo-page-hero .hero-analytics-card .hero-metric-grid{
        grid-template-columns:repeat(2,1fr) !important;
    }
}

/* BOOK DEMO mobile spacing */
@media (max-width:768px){

.demo-steps{
    padding-left:24px !important;
    padding-right:24px !important;
}

.demo-steps .step-card{
    width:100% !important;
    margin:0 0 20px !important;
}

}

/* BOOK DEMO mobile process grid padding */
@media (max-width:768px){

    .demo-process-section .public-section-inner{
        width:100% !important;
        padding-left:22px !important;
        padding-right:22px !important;
        box-sizing:border-box !important;
    }

    .demo-process-grid{
        width:100% !important;
        box-sizing:border-box !important;
    }

    .demo-process-grid > div{
        width:100% !important;
        box-sizing:border-box !important;
    }

}

/* ==========================================
   CUSTOMER STORIES
========================================== */

.stories-page-hero{
    background:
        radial-gradient(circle at 12% 12%,rgba(37,99,235,.18),transparent 34%),
        radial-gradient(circle at 88% 18%,rgba(124,58,237,.20),transparent 36%),
        linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
}

.stories-metrics-section{
    padding:58px 0;
    background:#fff;
}

.stories-metrics-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}

.stories-metrics-grid div{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:24px;
    padding:28px;
    box-shadow:0 18px 50px rgba(15,23,42,.05);
}

.stories-metrics-grid strong{
    display:block;
    color:#0f172a;
    font-size:36px;
    letter-spacing:-.05em;
}

.stories-metrics-grid span{
    color:#64748b;
    font-weight:700;
}

.stories-featured-section,
.stories-quotes-section,
.stories-timeline-section{
    padding:88px 0;
}

.stories-featured-section{
    background:#f8fafc;
}

.stories-featured-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:56px;
    align-items:center;
}

.stories-featured-card{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:32px;
    padding:38px;
    box-shadow:0 30px 90px rgba(15,23,42,.08);
}

.stories-featured-card > span{
    width:72px;
    height:72px;
    display:grid;
    place-items:center;
    border-radius:22px;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    font-size:34px;
    margin-bottom:22px;
}

.stories-featured-card h3{
    margin:0 0 12px;
    color:#0f172a;
    font-size:30px;
    letter-spacing:-.04em;
}

.stories-featured-card p{
    color:#64748b;
    line-height:1.7;
}

.stories-featured-card div{
    margin-top:16px;
    padding:18px;
    border-radius:18px;
    background:#f8fafc;
}

.stories-featured-card strong{
    display:block;
    color:#0f172a;
    font-size:30px;
    letter-spacing:-.05em;
}

.stories-featured-card small{
    color:#64748b;
    font-weight:800;
}

.stories-featured-copy h2{
    margin:14px 0 18px;
    color:#0f172a;
    font-size:clamp(38px,4.8vw,64px);
    line-height:1.02;
    letter-spacing:-.055em;
}

.stories-featured-copy > p{
    color:#64748b;
    font-size:17px;
    line-height:1.75;
}

.stories-before-after{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin-top:28px;
}

.stories-before-after div{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:22px;
    padding:24px;
}

.stories-before-after h3{
    margin:0 0 14px;
    color:#0f172a;
}

.stories-before-after p{
    margin:10px 0;
    color:#64748b;
    font-weight:700;
}

.stories-quotes-section{
    background:#fff;
}

.stories-quote-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
    margin-top:44px;
}

.stories-quote-grid div{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:32px;
    box-shadow:0 22px 60px rgba(15,23,42,.06);
}

.stories-quote-grid p{
    margin:0 0 20px;
    color:#0f172a;
    font-size:19px;
    line-height:1.6;
    font-weight:800;
}

.stories-quote-grid strong{
    color:#64748b;
}

.stories-timeline-section{
    background:#fff;
}

.stories-timeline{
    max-width:900px;
    margin:44px auto 0;
}

.stories-faq-section{
    padding-top:88px;
    padding-bottom:88px;
}

@media (max-width:900px){

    .stories-metrics-grid,
    .stories-featured-grid,
    .stories-before-after,
    .stories-quote-grid{
        grid-template-columns:1fr;
    }

    .stories-metrics-section,
    .stories-featured-section,
    .stories-quotes-section,
    .stories-timeline-section,
    .stories-faq-section{
        padding-top:64px;
        padding-bottom:64px;
    }

    .stories-featured-section .public-section-inner,
    .stories-quotes-section .public-section-inner,
    .stories-timeline-section .public-section-inner,
    .stories-faq-section .public-section-inner{
        width:100%;
        padding-left:22px;
        padding-right:22px;
        box-sizing:border-box;
    }
}

/* CUSTOMER STORIES hero chart fix */
.stories-page-hero .hero-line-chart{
    position:relative !important;
    display:flex !important;
    align-items:flex-end !important;
    gap:14px !important;
    min-height:190px !important;
    margin-top:26px !important;
    padding:54px 24px 24px !important;
    overflow:hidden !important;
}

.stories-page-hero .hero-line-chart span{
    display:block !important;
    flex:1 !important;
    min-width:24px !important;
    border-radius:14px 14px 4px 4px !important;
    background:linear-gradient(180deg,#60a5fa,#7c3aed) !important;
    box-shadow:0 14px 30px rgba(37,99,235,.22) !important;
}

.stories-page-hero .hero-chart-title{
    position:absolute !important;
    top:20px !important;
    left:24px !important;
    z-index:2 !important;
    color:#fff !important;
    font-weight:900 !important;
}

/* CUSTOMER STORIES metrics section polish */
.stories-metrics-section{
    padding:72px 0 52px !important;
    background:
        radial-gradient(circle at 20% 0%,rgba(37,99,235,.10),transparent 34%),
        radial-gradient(circle at 80% 30%,rgba(124,58,237,.10),transparent 36%),
        #fff !important;
}

.stories-metrics-grid{
    gap:22px !important;
}

.stories-metrics-grid div{
    position:relative !important;
    overflow:hidden !important;
    padding:34px 30px !important;
    border-radius:28px !important;
    background:linear-gradient(180deg,#ffffff,#f8fafc) !important;
    border:1px solid rgba(226,232,240,.95) !important;
    box-shadow:0 24px 70px rgba(15,23,42,.08) !important;
}

.stories-metrics-grid div:before{
    content:"" !important;
    position:absolute !important;
    inset:0 0 auto 0 !important;
    height:5px !important;
    background:linear-gradient(90deg,#2563eb,#7c3aed) !important;
}

.stories-metrics-grid strong{
    font-size:44px !important;
    color:#0f172a !important;
    line-height:1 !important;
}

.stories-metrics-grid span{
    display:block !important;
    margin-top:10px !important;
    color:#64748b !important;
    font-size:15px !important;
    line-height:1.45 !important;
}

/* CUSTOMER STORIES featured block polish */
.stories-featured-section{
    padding-top:74px !important;
    background:
        linear-gradient(180deg,#f8fafc 0%,#ffffff 100%) !important;
}

.stories-featured-card{
    background:
        radial-gradient(circle at 20% 0%,rgba(37,99,235,.12),transparent 38%),
        #fff !important;
}

.stories-featured-card div{
    display:grid !important;
    grid-template-columns:auto 1fr !important;
    align-items:center !important;
    gap:14px !important;
}

.stories-featured-card div strong{
    margin:0 !important;
}

.stories-featured-card div small{
    font-size:14px !important;
}

@media (max-width:900px){
    .stories-page-hero .hero-line-chart{
        min-height:170px !important;
    }

    .stories-metrics-section .public-section-inner{
        width:100% !important;
        padding-left:22px !important;
        padding-right:22px !important;
        box-sizing:border-box !important;
    }
}

/* CUSTOMER STORIES spacing tighten */
.stories-metrics-section{
    padding-top:46px !important;
    padding-bottom:34px !important;
}

.stories-featured-section{
    padding-top:54px !important;
    padding-bottom:54px !important;
}

.stories-quotes-section{
    padding-top:54px !important;
    padding-bottom:54px !important;
}

.features-business-strip{
    padding-top:58px !important;
    padding-bottom:58px !important;
}

.stories-stay-section{
    padding-top:54px !important;
    padding-bottom:44px !important;
}

.stories-timeline-section{
    padding-top:54px !important;
    padding-bottom:54px !important;
}

.stories-faq-section{
    padding-top:54px !important;
    padding-bottom:54px !important;
}

.stories-quote-grid,
.stories-timeline{
    margin-top:28px !important;
}

.stories-featured-copy h2{
    font-size:clamp(36px,4.3vw,58px) !important;
}

@media (max-width:900px){
    .stories-metrics-section,
    .stories-featured-section,
    .stories-quotes-section,
    .stories-stay-section,
    .stories-timeline-section,
    .stories-faq-section{
        padding-top:46px !important;
        padding-bottom:46px !important;
    }
}

/* ==========================================
   INTEGRATIONS PAGE FIX
========================================== */

.integrations-page-hero{
    background:
        radial-gradient(circle at 12% 12%,rgba(37,99,235,.18),transparent 34%),
        radial-gradient(circle at 88% 18%,rgba(124,58,237,.20),transparent 36%),
        linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
}

/* Hero visual */
.integration-node-map{
    position:relative;
    min-height:360px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    align-items:center;
}

.integration-node-map:before{
    content:"";
    position:absolute;
    inset:68px 46px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:32px;
    background:
        linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
    background-size:44px 44px;
}

.integration-node-map .node{
    position:relative;
    z-index:2;
    min-height:76px;
    display:grid;
    place-items:center;
    text-align:center;
    padding:16px;
    border-radius:22px;
    color:#fff;
    font-weight:900;
    background:rgba(15,23,42,.44);
    border:1px solid rgba(255,255,255,.16);
    box-shadow:0 22px 60px rgba(0,0,0,.18);
}

.integration-node-map .node.center{
    grid-column:1 / -1;
    max-width:240px;
    margin:0 auto;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    font-size:20px;
}

/* Integration cards */
.integrations-grid-section{
    padding:82px 0;
    background:#fff;
}

.integrations-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
    margin-top:42px;
}

.integrations-grid > div{
    position:relative;
    min-height:230px;
    padding:30px;
    border-radius:28px;
    background:linear-gradient(180deg,#ffffff,#f8fafc);
    border:1px solid #e5e7eb;
    box-shadow:0 22px 60px rgba(15,23,42,.06);
    transition:.25s ease;
    overflow:hidden;
}

.integrations-grid > div:hover{
    transform:translateY(-6px);
    box-shadow:0 30px 80px rgba(15,23,42,.10);
}

.integrations-grid > div:before{
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:5px;
    background:linear-gradient(90deg,#2563eb,#7c3aed);
}

.integrations-grid span{
    width:56px;
    height:56px;
    display:grid;
    place-items:center;
    margin-bottom:18px;
    border-radius:18px;
    background:#eef2ff;
    font-size:26px;
}

.integrations-grid h3{
    margin:0 0 12px;
    color:#0f172a;
    font-size:22px;
    letter-spacing:-.035em;
}

.integrations-grid p{
    margin:0 0 18px;
    color:#64748b;
    line-height:1.65;
}

.integrations-grid small{
    display:inline-flex;
    align-items:center;
    padding:8px 12px;
    border-radius:999px;
    background:#eef2ff;
    color:#4f46e5;
    font-weight:900;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.04em;
}

/* Featured section */
.integrations-featured-section{
    padding:82px 0;
    background:
        radial-gradient(circle at 10% 0%,rgba(37,99,235,.10),transparent 36%),
        radial-gradient(circle at 90% 30%,rgba(124,58,237,.10),transparent 35%),
        #f8fafc;
}

.integrations-featured-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:56px;
    align-items:center;
}

.integrations-featured-grid h2{
    margin:14px 0 18px;
    color:#0f172a;
    font-size:clamp(36px,4.5vw,60px);
    line-height:1.02;
    letter-spacing:-.055em;
}

.integrations-featured-grid p{
    margin:0 0 24px;
    color:#64748b;
    font-size:17px;
    line-height:1.75;
}

.integrations-comparison-section,
.integrations-faq-section{
    padding-top:70px !important;
    padding-bottom:70px !important;
}

/* Mobile */
@media (max-width:900px){

    .integration-node-map{
        min-height:300px;
        grid-template-columns:repeat(2,1fr);
    }

    .integration-node-map .node.center{
        grid-column:1 / -1;
    }

    .integrations-grid,
    .integrations-featured-grid{
        grid-template-columns:1fr;
    }

    .integrations-grid-section,
    .integrations-featured-section,
    .integrations-comparison-section,
    .integrations-faq-section{
        padding-top:58px !important;
        padding-bottom:58px !important;
    }

    .integrations-grid-section .public-section-inner,
    .integrations-featured-section .public-section-inner,
    .integrations-comparison-section .public-section-inner,
    .integrations-faq-section .public-section-inner{
        width:100% !important;
        padding-left:22px !important;
        padding-right:22px !important;
        box-sizing:border-box !important;
    }
}

/* ==========================================
   INTEGRATIONS - TIGHTER SPACING
========================================== */

.integrations-page section{
    padding-top:64px !important;
    padding-bottom:64px !important;
}

.integrations-page .marketing-section-heading{
    margin-bottom:34px !important;
}

.integrations-page .public-section-kicker{
    margin-bottom:12px !important;
}

.integrations-page h2{
    margin-bottom:16px !important;
}

.integrations-page p{
    margin-bottom:0 !important;
}

.integrations-page .integrations-grid{
    margin-top:34px !important;
}

.integrations-page .integrations-featured-grid{
    gap:42px !important;
}

.integrations-page .integrations-featured-grid h2{
    margin:10px 0 16px !important;
}

.integrations-page .integrations-featured-grid p{
    margin-bottom:20px !important;
}

.integrations-page .integrations-comparison-section{
    padding-top:54px !important;
}

.integrations-page .integrations-faq-section{
    padding-top:54px !important;
}

.integrations-page .integrations-cta-section{
    padding-top:54px !important;
}

@media (max-width:900px){

    .integrations-page section{
        padding-top:48px !important;
        padding-bottom:48px !important;
    }

    .integrations-page .integrations-grid{
        margin-top:26px !important;
    }

    .integrations-page .integrations-featured-grid{
        gap:28px !important;
    }

}


/* ==========================================
   MOBILE GAP FIX - INTEGRATIONS
========================================== */

@media (max-width:900px){

    .integrations-comparison-section{
        padding-top:24px !important;
        padding-bottom:32px !important;
    }

    .integrations-comparison-section .marketing-section-heading{
        margin-bottom:20px !important;
    }

    .integrations-comparison-section h2{
        margin-bottom:12px !important;
    }

    .integrations-comparison-section + .integrations-faq-section{
        padding-top:20px !important;
    }

}


/* =====================================================
   PRICING PAGE POLISH
===================================================== */

.pricing-hero{
    padding:90px 0 70px;
}

.pricing-plans-section{
    padding:70px 0;
}

.pricing-comparison-section{
    padding:65px 0;
}

.roi-section{
    padding:70px 0;
}

.pricing-faq-section{
    padding:65px 0;
}

.compact-cta{
    padding:70px 0 90px;
}

.pricing-plans-section .marketing-section-heading,
.pricing-comparison-section .marketing-section-heading,
.pricing-faq-section .marketing-section-heading{
    margin-bottom:42px;
}

.roi-grid{
    gap:60px;
}

.pricing-feature-table{
    margin-top:35px;
}

.pricing-faq-grid{
    margin-top:35px;
}

@media (max-width:768px){

    .pricing-hero{
        padding:60px 0 45px;
    }

    .pricing-plans-section,
    .pricing-comparison-section,
    .roi-section,
    .pricing-faq-section,
    .compact-cta{
        padding:45px 0;
    }

    .roi-grid{
        gap:30px;
    }

    .pricing-plans-section .marketing-section-heading,
    .pricing-comparison-section .marketing-section-heading,
    .pricing-faq-section .marketing-section-heading{
        margin-bottom:28px;
    }
}


/* =====================================================
   PRICING PAGE POLISH
===================================================== */

.pricing-hero{
    padding:90px 0 70px !important;
}

.pricing-plans-section{
    padding:70px 0 !important;
}

.pricing-comparison-section{
    padding:65px 0 !important;
}

.roi-section{
    padding:70px 0 !important;
}

.pricing-faq-section{
    padding:65px 0 !important;
}

.pricing-plans-section .marketing-section-heading,
.pricing-comparison-section .marketing-section-heading,
.pricing-faq-section .marketing-section-heading{
    margin-bottom:42px !important;
}

.roi-grid{
    gap:60px !important;
}

.pricing-feature-table{
    margin-top:35px !important;
}

.pricing-faq-grid{
    margin-top:35px !important;
}

@media (max-width:768px){

    .pricing-hero{
        padding:60px 0 45px !important;
    }

    .pricing-plans-section,
    .pricing-comparison-section,
    .roi-section,
    .pricing-faq-section{
        padding:45px 0 !important;
    }

    .roi-grid{
        gap:30px !important;
    }

    .pricing-plans-section .marketing-section-heading,
    .pricing-comparison-section .marketing-section-heading,
    .pricing-faq-section .marketing-section-heading{
        margin-bottom:28px !important;
    }
}


/* Pricing hero top spacing */

.pricing-hero{
    padding-top:140px !important;
}

@media (max-width:768px){
    .pricing-hero{
        padding-top:95px !important;
    }
}


/* =====================================================
   PREMIUM MOTION SYSTEM
   Charts, diagrams, cards, and hero visuals
===================================================== */

@keyframes rlFloatSoft{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-10px)}
}

@keyframes rlPulseGlow{
    0%,100%{box-shadow:0 20px 70px rgba(37,99,235,.12)}
    50%{box-shadow:0 30px 95px rgba(124,58,237,.24)}
}

@keyframes rlBarRise{
    from{transform:scaleY(.18);opacity:.45}
    to{transform:scaleY(1);opacity:1}
}

@keyframes rlFadeUp{
    from{opacity:0;transform:translateY(18px)}
    to{opacity:1;transform:translateY(0)}
}

@keyframes rlNodePulse{
    0%,100%{transform:scale(1);opacity:1}
    50%{transform:scale(1.04);opacity:.92}
}

@keyframes rlGradientShift{
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}

/* Hero visual floating */
.hero-analytics-card,
.pricing-visual-card,
.faq-visual-card,
.contact-visual-card,
.about-hero-card{
    animation:rlFloatSoft 7s ease-in-out infinite, rlPulseGlow 6s ease-in-out infinite;
    will-change:transform;
}

/* Chart bars animate upward */
.hero-line-chart span,
.pricing-chart span{
    transform-origin:bottom;
    animation:rlBarRise .9s ease-out both;
}

.hero-line-chart span:nth-of-type(1),
.pricing-chart span:nth-of-type(1){animation-delay:.05s}

.hero-line-chart span:nth-of-type(2),
.pricing-chart span:nth-of-type(2){animation-delay:.12s}

.hero-line-chart span:nth-of-type(3),
.pricing-chart span:nth-of-type(3){animation-delay:.19s}

.hero-line-chart span:nth-of-type(4),
.pricing-chart span:nth-of-type(4){animation-delay:.26s}

.hero-line-chart span:nth-of-type(5),
.pricing-chart span:nth-of-type(5){animation-delay:.33s}

.hero-line-chart span:nth-of-type(6),
.pricing-chart span:nth-of-type(6){animation-delay:.40s}

.hero-line-chart span:nth-of-type(7){animation-delay:.47s}
.hero-line-chart span:nth-of-type(8){animation-delay:.54s}
.hero-line-chart span:nth-of-type(9){animation-delay:.61s}

/* Integration node animation */
.integration-node-map .node{
    animation:rlNodePulse 5.5s ease-in-out infinite;
}

.integration-node-map .node:nth-child(2){animation-delay:.2s}
.integration-node-map .node:nth-child(3){animation-delay:.4s}
.integration-node-map .node:nth-child(4){animation-delay:.6s}
.integration-node-map .node:nth-child(5){animation-delay:.8s}
.integration-node-map .node:nth-child(6){animation-delay:1s}
.integration-node-map .node:nth-child(7){animation-delay:1.2s}

/* CTA gradient motion */
.marketing-cta{
    background-size:180% 180%;
    animation:rlGradientShift 10s ease infinite;
}

/* Card entrance feel */
.platform-card,
.pricing-v3-card,
.about-principles-premium-grid > div,
.demo-process-grid > div,
.stories-quote-grid > div,
.integrations-grid > div{
    animation:rlFadeUp .65s ease-out both;
}

/* Respect reduced motion preferences */
@media (prefers-reduced-motion:reduce){
    *,
    *::before,
    *::after{
        animation:none !important;
        transition:none !important;
        scroll-behavior:auto !important;
    }
}


/* =====================================================
   HOMEPAGE + FEATURES MOTION PATCH
===================================================== */

@keyframes rlDashFloat{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-12px)}
}

@keyframes rlMiniBarMove{
    0%,100%{transform:scaleY(.75)}
    50%{transform:scaleY(1)}
}

@keyframes rlSoftPulse{
    0%,100%{transform:scale(1)}
    50%{transform:scale(1.035)}
}

@keyframes rlLineDraw{
    from{stroke-dashoffset:700}
    to{stroke-dashoffset:0}
}

/* Homepage dashboard */
.saas-dashboard{
    animation:rlDashFloat 6s ease-in-out infinite !important;
    will-change:transform;
}

.dash-chart span,
.dash-chart div{
    transform-origin:bottom !important;
    animation:rlMiniBarMove 2.4s ease-in-out infinite !important;
}

.dash-chart span:nth-child(1),
.dash-chart div:nth-child(1){animation-delay:.1s !important}

.dash-chart span:nth-child(2),
.dash-chart div:nth-child(2){animation-delay:.25s !important}

.dash-chart span:nth-child(3),
.dash-chart div:nth-child(3){animation-delay:.4s !important}

.dash-chart span:nth-child(4),
.dash-chart div:nth-child(4){animation-delay:.55s !important}

.dash-chart span:nth-child(5),
.dash-chart div:nth-child(5){animation-delay:.7s !important}

/* Homepage cards */
.trusted-card,
.feature-card,
.how-card,
.pricing-card{
    transition:.25s ease !important;
}

.trusted-card:hover,
.feature-card:hover,
.how-card:hover,
.pricing-card:hover{
    transform:translateY(-6px) !important;
}

/* Features diagram */
.feature-diagram{
    animation:rlDashFloat 7s ease-in-out infinite !important;
}

.feature-diagram > div,
.journey-flow > div,
.flow-lane > div{
    animation:rlSoftPulse 4.8s ease-in-out infinite !important;
}

.feature-diagram > div:nth-child(2),
.journey-flow > div:nth-child(2),
.flow-lane > div:nth-child(2){animation-delay:.25s !important}

.feature-diagram > div:nth-child(3),
.journey-flow > div:nth-child(3),
.flow-lane > div:nth-child(3){animation-delay:.5s !important}

.feature-diagram > div:nth-child(4),
.journey-flow > div:nth-child(4),
.flow-lane > div:nth-child(4){animation-delay:.75s !important}

/* Features SVG line chart */
.hero-line-chart svg polyline,
.line-chart svg polyline{
    stroke-dasharray:700 !important;
    stroke-dashoffset:700 !important;
    animation:rlLineDraw 2.2s ease-out forwards !important;
}

/* Analytics board */
.analytics-board{
    animation:rlDashFloat 6.5s ease-in-out infinite !important;
}

.analytics-board .line-chart span,
.line-chart span{
    transform-origin:bottom !important;
    animation:rlMiniBarMove 2.3s ease-in-out infinite !important;
}


/* FEATURES SVG chart visible animation fix */
.features-hero-v3 .hero-line-chart svg{
    display:block !important;
    width:100% !important;
    height:220px !important;
    overflow:visible !important;
}

.features-hero-v3 .hero-line-chart polyline{
    fill:none !important;
    stroke:url(#heroLine) !important;
    stroke-width:8 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
    stroke-dasharray:900 !important;
    stroke-dashoffset:900 !important;
    animation:rlFeatureLineDraw 2.6s ease-out forwards, rlFeatureLineGlow 3s ease-in-out infinite 2.6s !important;
    filter:drop-shadow(0 12px 18px rgba(99,102,241,.35)) !important;
}

@keyframes rlFeatureLineDraw{
    to{stroke-dashoffset:0}
}

@keyframes rlFeatureLineGlow{
    0%,100%{stroke-width:8}
    50%{stroke-width:11}
}

.features-hero-v3 .hero-line-chart:after{
    content:"" !important;
    position:absolute !important;
    width:18px !important;
    height:18px !important;
    border-radius:999px !important;
    background:#c084fc !important;
    right:20px !important;
    top:58px !important;
    box-shadow:0 0 0 8px rgba(192,132,252,.16),0 14px 30px rgba(124,58,237,.35) !important;
    animation:rlFeatureDotPulse 1.7s ease-in-out infinite !important;
}

@keyframes rlFeatureDotPulse{
    0%,100%{transform:scale(1);opacity:1}
    50%{transform:scale(1.25);opacity:.72}
}


/* FEATURES hero bar chart fix */
.features-hero-v3 .features-bars-chart{
    position:relative !important;
    display:flex !important;
    align-items:flex-end !important;
    gap:14px !important;
    min-height:190px !important;
    margin-top:26px !important;
    padding:54px 24px 24px !important;
    overflow:hidden !important;
}

.features-hero-v3 .features-bars-chart span{
    display:block !important;
    flex:1 !important;
    min-width:24px !important;
    border-radius:14px 14px 4px 4px !important;
    background:linear-gradient(180deg,#60a5fa,#7c3aed) !important;
    box-shadow:0 14px 30px rgba(37,99,235,.22) !important;
    transform-origin:bottom !important;
    animation:rlBarPulseVisible 2.2s ease-in-out infinite !important;
}

.features-hero-v3 .features-bars-chart .hero-chart-title{
    position:absolute !important;
    top:20px !important;
    left:24px !important;
    z-index:2 !important;
    color:#fff !important;
    font-weight:900 !important;
}


/* FEATURES hero bar chart fix */
.features-hero-v3 .features-bars-chart{
    position:relative !important;
    display:flex !important;
    align-items:flex-end !important;
    gap:14px !important;
    min-height:190px !important;
    margin-top:26px !important;
    padding:54px 24px 24px !important;
    overflow:hidden !important;
}

.features-hero-v3 .features-bars-chart span{
    display:block !important;
    flex:1 !important;
    min-width:24px !important;
    border-radius:14px 14px 4px 4px !important;
    background:linear-gradient(180deg,#60a5fa,#7c3aed) !important;
    box-shadow:0 14px 30px rgba(37,99,235,.22) !important;
    transform-origin:bottom !important;
    animation:rlBarPulseVisible 2.2s ease-in-out infinite !important;
}

.features-hero-v3 .features-bars-chart .hero-chart-title{
    position:absolute !important;
    top:20px !important;
    left:24px !important;
    z-index:2 !important;
    color:#fff !important;
    font-weight:900 !important;
}


/* FEATURES hero animated line graph restore */
.features-hero-v3 .features-line-graph{
    position:relative !important;
    min-height:250px !important;
    margin-top:26px !important;
    padding:58px 24px 24px !important;
    overflow:hidden !important;
}

.features-hero-v3 .features-line-graph svg{
    position:absolute !important;
    inset:54px 22px 22px !important;
    width:calc(100% - 44px) !important;
    height:calc(100% - 76px) !important;
    overflow:visible !important;
}

.features-hero-v3 .features-line-graph .hero-chart-title{
    position:absolute !important;
    top:20px !important;
    left:24px !important;
    z-index:3 !important;
    color:#fff !important;
    font-weight:900 !important;
}

.feature-graph-fill{
    fill:url(#heroLineFeature) !important;
    opacity:.18 !important;
}

.feature-graph-line{
    fill:none !important;
    stroke:url(#heroLineFeature) !important;
    stroke-width:7 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
    filter:url(#heroGlowFeature) !important;
    stroke-dasharray:700 !important;
    stroke-dashoffset:700 !important;
    animation:featureLineDraw 2.8s ease-out forwards, featureLinePulse 4s ease-in-out infinite 2.8s !important;
}

.feature-graph-dot{
    fill:#d946ef !important;
    stroke:rgba(255,255,255,.75) !important;
    stroke-width:5 !important;
    filter:url(#heroGlowFeature) !important;
    animation:featureDotPulse 2.2s ease-in-out infinite !important;
}

@keyframes featureLineDraw{
    to{stroke-dashoffset:0}
}

@keyframes featureLinePulse{
    0%,100%{stroke-width:7}
    50%{stroke-width:9}
}

@keyframes featureDotPulse{
    0%,100%{transform:scale(1);opacity:1}
    50%{transform:scale(1.25);opacity:.85}
}

/* hide bad black leftover shapes if cached CSS touched them */
.features-hero-v3 .features-bars-chart{
    display:none !important;
}


/* FEATURES graph refinement */
.features-hero-v3 .feature-graph-dot{
    display:none !important;
}

.features-hero-v3 .feature-graph-line{
    stroke-width:6 !important;
    opacity:.95 !important;
    animation:featureLineDraw 2.2s ease-out forwards !important;
}

.features-hero-v3 .feature-graph-fill{
    opacity:.10 !important;
}

.features-hero-v3 .features-line-graph svg{
    inset:58px 30px 30px !important;
    width:calc(100% - 60px) !important;
    height:calc(100% - 88px) !important;
}


/* FORCE SHOW FINAL FEATURES CSS GRAPH */
.features-hero-v3 .rl-css-graph{
    display:block !important;
    position:relative !important;
    height:250px !important;
    margin-top:26px !important;
    padding:58px 24px 24px !important;
    overflow:hidden !important;
    border-radius:28px !important;
}

.features-hero-v3 .rl-css-graph-line,
.features-hero-v3 .rl-css-graph-fill{
    display:block !important;
}

.features-hero-v3 .rl-css-graph-line{
    position:absolute !important;
    left:36px !important;
    right:36px !important;
    bottom:72px !important;
    height:120px !important;
    z-index:3 !important;
    clip-path:polygon(0 82%, 15% 72%, 30% 60%, 45% 48%, 60% 31%, 75% 22%, 100% 10%, 100% 18%, 75% 30%, 60% 39%, 45% 56%, 30% 68%, 15% 80%, 0 90%) !important;
    background:linear-gradient(90deg,#38bdf8,#8b5cf6,#d946ef) !important;
    filter:drop-shadow(0 0 12px rgba(96,165,250,.45)) !important;
}

.features-hero-v3 .rl-css-graph-fill{
    position:absolute !important;
    left:36px !important;
    right:36px !important;
    bottom:54px !important;
    height:145px !important;
    z-index:2 !important;
    clip-path:polygon(0 88%, 15% 78%, 30% 66%, 45% 54%, 60% 37%, 75% 28%, 100% 16%, 100% 100%, 0 100%) !important;
    background:linear-gradient(180deg,rgba(139,92,246,.20),rgba(56,189,248,.03)) !important;
}

.features-hero-v3 .rl-css-graph .hero-chart-title{
    display:block !important;
}


/* =====================================================
   FEATURES SHARED HERO CHART + INDEX GAP FIX
===================================================== */

/* Features chart container now matches pricing-style visual weight */
.features-hero-v3 .rl-css-graph{
    display:block !important;
    position:relative !important;
    height:245px !important;
    margin-top:24px !important;
    padding:58px 24px 24px !important;
    overflow:hidden !important;
    border-radius:26px !important;
    background:
        linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),
        rgba(15,23,42,.24) !important;
    background-size:48px 48px !important;
    border:1px solid rgba(255,255,255,.14) !important;
}

.features-hero-v3 .rl-css-graph .hero-chart-title{
    position:absolute !important;
    top:20px !important;
    left:24px !important;
    z-index:5 !important;
    color:#fff !important;
    font-weight:900 !important;
}

.features-hero-v3 .rl-css-graph-line{
    display:block !important;
    position:absolute !important;
    left:34px !important;
    right:34px !important;
    bottom:70px !important;
    height:125px !important;
    z-index:4 !important;
    clip-path:polygon(
        0 78%,
        14% 69%,
        28% 58%,
        43% 48%,
        58% 30%,
        74% 22%,
        100% 10%,
        100% 16%,
        74% 28%,
        58% 36%,
        43% 54%,
        28% 64%,
        14% 75%,
        0 84%
    ) !important;
    background:linear-gradient(90deg,#38bdf8,#6366f1,#d946ef) !important;
    filter:drop-shadow(0 0 14px rgba(96,165,250,.5)) !important;
    transform-origin:left center !important;
    animation:rlCssGraphDraw 2s ease-out both !important;
}

.features-hero-v3 .rl-css-graph-fill{
    display:block !important;
    position:absolute !important;
    left:34px !important;
    right:34px !important;
    bottom:48px !important;
    height:150px !important;
    z-index:2 !important;
    clip-path:polygon(
        0 86%,
        14% 77%,
        28% 66%,
        43% 56%,
        58% 38%,
        74% 30%,
        100% 18%,
        100% 100%,
        0 100%
    ) !important;
    background:linear-gradient(180deg,rgba(139,92,246,.22),rgba(56,189,248,.03)) !important;
    animation:rlCssGraphFade 1.4s ease-out both !important;
}

/* Homepage gap after hero */
.public-hero.hero-v2{
    padding-bottom:54px !important;
}

.trusted-section{
    padding-top:46px !important;
}

@media (max-width:900px){
    .public-hero.hero-v2{
        padding-bottom:44px !important;
    }

    .trusted-section{
        padding-top:34px !important;
    }
}


/* FINAL HOMEPAGE HERO GAP FIX */
.public-hero.hero-v2{
    padding-bottom:28px !important;
    min-height:auto !important;
}

.public-hero.hero-v2 + .trusted-section,
.trusted-section{
    margin-top:0 !important;
    padding-top:34px !important;
}

/* FINAL FEATURES GRAPH CONTAINER POLISH */
.features-hero-v3 .rl-css-graph{
    height:260px !important;
    margin-top:24px !important;
    padding:58px 24px 24px !important;
    border:1px solid rgba(255,255,255,.16) !important;
    background:
        linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),
        rgba(15,23,42,.20) !important;
    background-size:46px 46px,46px 46px,auto !important;
}

.features-hero-v3 .rl-css-graph-line{
    bottom:78px !important;
    left:42px !important;
    right:42px !important;
    height:112px !important;
}

.features-hero-v3 .rl-css-graph-fill{
    bottom:66px !important;
    left:42px !important;
    right:42px !important;
    height:128px !important;
    opacity:.7 !important;
}

@media (max-width:900px){
    .public-hero.hero-v2{
        padding-bottom:22px !important;
    }

    .trusted-section{
        padding-top:28px !important;
    }
}


/* HOMEPAGE HERO / TRUSTED SECTION FINAL BALANCE */
.public-hero.hero-v2{
    padding-bottom:90px !important;
    min-height:auto !important;
}

.public-hero.hero-v2 + .trusted-section,
.trusted-section{
    margin-top:0 !important;
    padding-top:70px !important;
    position:relative !important;
    z-index:5 !important;
}

@media (max-width:900px){
    .public-hero.hero-v2{
        padding-bottom:70px !important;
    }

    .trusted-section{
        padding-top:56px !important;
    }
}


/* FINAL HERO SPACING */
.public-hero.hero-v2{
    padding-bottom:130px !important;
    min-height:auto !important;
}

.public-hero.hero-v2 + .trusted-section{
    margin-top:0 !important;
    padding-top:0 !important;
    position:relative;
    z-index:5;
}

@media (max-width:900px){
    .public-hero.hero-v2{
        padding-bottom:90px !important;
    }
}


/* =====================================================
   PREMIUM SIGNUP PAGE
===================================================== */

.premium-signup-page{
    padding:140px 0 90px;
    background:
        radial-gradient(circle at 12% 10%,rgba(37,99,235,.14),transparent 34%),
        radial-gradient(circle at 88% 18%,rgba(124,58,237,.16),transparent 34%),
        linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
}

.premium-signup-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(420px,540px);
    gap:64px;
    align-items:center;
}

.premium-signup-copy h1{
    margin:18px 0;
    color:#0f172a;
    font-size:clamp(46px,5.5vw,76px);
    line-height:.98;
    letter-spacing:-.065em;
}

.premium-signup-copy p{
    max-width:650px;
    margin:0;
    color:#64748b;
    font-size:19px;
    line-height:1.75;
}

.premium-signup-proof{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-top:34px;
}

.premium-signup-proof div{
    padding:22px;
    border-radius:24px;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 22px 60px rgba(15,23,42,.06);
}

.premium-signup-proof strong{
    display:block;
    color:#0f172a;
    font-size:28px;
    letter-spacing:-.04em;
}

.premium-signup-proof span{
    display:block;
    margin-top:4px;
    color:#64748b;
    font-weight:800;
    font-size:13px;
}

.premium-signup-benefits{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
    margin-top:26px;
}

.premium-signup-benefits div{
    padding:15px 18px;
    border-radius:18px;
    background:rgba(255,255,255,.78);
    border:1px solid #e5e7eb;
    color:#0f172a;
    font-weight:900;
    box-shadow:0 16px 45px rgba(15,23,42,.05);
}

.premium-signup-form-wrap{
    position:relative;
}

.premium-signup-card{
    position:relative;
    padding:34px;
    border-radius:34px;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 34px 100px rgba(15,23,42,.12);
    backdrop-filter:blur(18px);
}

.premium-form-head{
    display:flex;
    gap:14px;
    align-items:center;
    margin-bottom:26px;
    padding-bottom:22px;
    border-bottom:1px solid #e5e7eb;
}

.premium-form-head span{
    width:54px;
    height:54px;
    display:grid;
    place-items:center;
    border-radius:18px;
    color:#fff;
    font-size:26px;
    font-weight:900;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    box-shadow:0 18px 45px rgba(79,70,229,.28);
}

.premium-form-head strong{
    display:block;
    color:#0f172a;
    font-size:22px;
    letter-spacing:-.035em;
}

.premium-form-head small{
    color:#64748b;
    font-weight:800;
}

.premium-signup-card label{
    display:block;
    margin-bottom:18px;
}

.premium-signup-card label strong{
    display:block;
    margin:0 0 8px;
    color:#0f172a;
    font-size:14px;
    font-weight:900;
}

.premium-signup-card input,
.premium-signup-card select{
    width:100%;
    height:56px;
    padding:0 17px;
    border-radius:18px;
    border:1px solid #dbe3ef;
    background:#fff;
    color:#0f172a;
    font-size:15px;
    outline:none;
    box-sizing:border-box;
    transition:.2s ease;
}

.premium-signup-card input:focus,
.premium-signup-card select:focus{
    border-color:#6366f1;
    box-shadow:0 0 0 5px rgba(99,102,241,.12);
}

.premium-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.premium-signup-submit{
    width:100%;
    height:60px;
    border:0;
    border-radius:20px;
    color:#fff;
    cursor:pointer;
    font-size:16px;
    font-weight:950;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    box-shadow:0 24px 60px rgba(79,70,229,.30);
    transition:.2s ease;
}

.premium-signup-submit:hover{
    transform:translateY(-2px);
    box-shadow:0 30px 80px rgba(79,70,229,.38);
}

.premium-signup-safe,
.premium-signup-login{
    text-align:center;
    color:#64748b;
    font-weight:800;
    font-size:13px;
}

.premium-signup-safe{
    margin-top:18px;
}

.premium-signup-login{
    margin-top:12px;
}

.premium-signup-login a{
    color:#4f46e5;
    text-decoration:none;
    font-weight:950;
}

.signup-v2-error{
    margin-bottom:16px;
    padding:16px 18px;
    border-radius:18px;
    background:#fef2f2;
    border:1px solid #fecaca;
    color:#991b1b;
    font-weight:900;
}

@media (max-width:980px){
    .premium-signup-page{
        padding:110px 0 70px;
    }

    .premium-signup-grid{
        grid-template-columns:1fr;
        gap:42px;
    }
}

@media (max-width:700px){
    .premium-signup-page{
        padding:96px 0 56px;
    }

    .premium-signup-grid{
        width:100%;
        padding-left:22px;
        padding-right:22px;
        box-sizing:border-box;
    }

    .premium-signup-copy h1{
        font-size:46px;
    }

    .premium-signup-copy p{
        font-size:18px;
    }

    .premium-signup-proof,
    .premium-signup-benefits,
    .premium-form-row{
        grid-template-columns:1fr;
    }

    .premium-signup-card{
        padding:24px;
        border-radius:28px;
    }
}


/* =====================================================
   PREMIUM LOGIN PAGE
===================================================== */

.premium-login-page{
    min-height:100vh;
    padding:120px 0 80px;
    background:
        radial-gradient(circle at 12% 10%,rgba(37,99,235,.16),transparent 34%),
        radial-gradient(circle at 88% 18%,rgba(124,58,237,.18),transparent 34%),
        linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
    display:flex;
    align-items:center;
}

.premium-login-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(400px,500px);
    gap:70px;
    align-items:center;
}

.premium-login-brand{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-bottom:34px;
    color:#0f172a;
    text-decoration:none;
    font-weight:950;
    font-size:22px;
}

.premium-login-brand span{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border-radius:15px;
    color:#fff;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    box-shadow:0 18px 45px rgba(79,70,229,.28);
}

.premium-login-copy h1{
    margin:18px 0;
    color:#0f172a;
    font-size:clamp(46px,5.2vw,74px);
    line-height:.98;
    letter-spacing:-.065em;
}

.premium-login-copy p{
    max-width:640px;
    margin:0;
    color:#64748b;
    font-size:19px;
    line-height:1.75;
}

.premium-login-benefits{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
    margin-top:34px;
}

.premium-login-benefits div{
    padding:22px;
    border-radius:24px;
    background:#fff;
    border:1px solid #e5e7eb;
    box-shadow:0 22px 60px rgba(15,23,42,.06);
}

.premium-login-benefits span{
    display:block;
    font-size:26px;
    margin-bottom:12px;
}

.premium-login-benefits strong{
    display:block;
    color:#0f172a;
    font-size:18px;
}

.premium-login-benefits small{
    display:block;
    margin-top:5px;
    color:#64748b;
    font-weight:800;
}

.premium-login-card{
    padding:36px;
    border-radius:34px;
    background:rgba(255,255,255,.9);
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 34px 100px rgba(15,23,42,.12);
    backdrop-filter:blur(18px);
}

.premium-login-card label{
    display:block;
    margin-bottom:18px;
}

.premium-login-card label strong{
    display:block;
    margin:0 0 8px;
    color:#0f172a;
    font-size:14px;
    font-weight:900;
}

.premium-login-card input{
    width:100%;
    height:56px;
    padding:0 17px;
    border-radius:18px;
    border:1px solid #dbe3ef;
    background:#fff;
    color:#0f172a;
    font-size:15px;
    outline:none;
    box-sizing:border-box;
    transition:.2s ease;
}

.premium-login-card input:focus{
    border-color:#6366f1;
    box-shadow:0 0 0 5px rgba(99,102,241,.12);
}

.premium-login-submit{
    width:100%;
    height:60px;
    border:0;
    border-radius:20px;
    color:#fff;
    cursor:pointer;
    font-size:16px;
    font-weight:950;
    background:linear-gradient(135deg,#2563eb,#7c3aed);
    box-shadow:0 24px 60px rgba(79,70,229,.30);
    transition:.2s ease;
}

.premium-login-submit:hover{
    transform:translateY(-2px);
    box-shadow:0 30px 80px rgba(79,70,229,.38);
}

.premium-login-links,
.premium-login-safe,
.premium-login-signup{
    text-align:center;
    color:#64748b;
    font-weight:800;
    font-size:13px;
}

.premium-login-links{
    margin-top:18px;
}

.premium-login-safe{
    margin-top:14px;
}

.premium-login-signup{
    margin-top:12px;
}

.premium-login-links a,
.premium-login-signup a{
    color:#4f46e5;
    text-decoration:none;
    font-weight:950;
}

@media (max-width:980px){
    .premium-login-page{
        padding:90px 0 60px;
    }

    .premium-login-grid{
        grid-template-columns:1fr;
        gap:42px;
    }
}

@media (max-width:700px){
    .premium-login-grid{
        width:100%;
        padding-left:22px;
        padding-right:22px;
        box-sizing:border-box;
    }

    .premium-login-copy h1{
        font-size:44px;
    }

    .premium-login-copy p{
        font-size:18px;
    }

    .premium-login-benefits{
        grid-template-columns:1fr;
    }

    .premium-login-card{
        padding:24px;
        border-radius:28px;
    }
}


/* LOGIN COMPACT FOOTER */
.premium-login-footer{
    padding:24px 22px 34px;
    background:#fff;
}

.premium-login-footer div{
    max-width:1120px;
    margin:0 auto;
    padding-top:22px;
    border-top:1px solid #e5e7eb;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    flex-wrap:wrap;
    color:#64748b;
    font-size:13px;
    font-weight:800;
}

.premium-login-footer a{
    color:#64748b;
    text-decoration:none;
}

.premium-login-footer a:hover{
    color:#4f46e5;
}

.premium-login-footer strong{
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#0f172a;
}

.premium-login-footer i{
    width:8px;
    height:8px;
    display:inline-block;
    border-radius:50%;
    background:#22c55e;
    box-shadow:0 0 0 4px rgba(34,197,94,.14);
}

@media(max-width:700px){
    .premium-login-footer div{
        gap:12px;
        text-align:center;
    }
}


/* =====================================================
   PREMIUM LEGAL PAGES
===================================================== */

.legal-hero{
    padding:140px 0 70px !important;
    background:
        radial-gradient(circle at 12% 10%,rgba(37,99,235,.14),transparent 34%),
        radial-gradient(circle at 88% 18%,rgba(124,58,237,.16),transparent 34%),
        linear-gradient(180deg,#f8fbff 0%,#ffffff 100%) !important;
}

.legal-hero-inner{
    max-width:900px !important;
    text-align:center !important;
}

.legal-hero h1{
    margin:18px 0 !important;
    color:#0f172a !important;
    font-size:clamp(46px,5.5vw,76px) !important;
    line-height:.98 !important;
    letter-spacing:-.065em !important;
}

.legal-hero p{
    margin:0 auto !important;
    max-width:760px !important;
    color:#64748b !important;
    font-size:19px !important;
    line-height:1.75 !important;
}

.legal-meta{
    display:inline-flex !important;
    margin-top:26px !important;
    padding:11px 16px !important;
    border-radius:999px !important;
    background:#fff !important;
    border:1px solid #e5e7eb !important;
    color:#0f172a !important;
    font-weight:900 !important;
    box-shadow:0 16px 45px rgba(15,23,42,.06) !important;
}

.legal-content-section{
    padding:70px 0 !important;
    background:#fff !important;
}

.legal-grid{
    display:grid !important;
    grid-template-columns:280px minmax(0,1fr) !important;
    gap:38px !important;
    align-items:start !important;
}

.legal-toc{
    position:sticky !important;
    top:110px !important;
    padding:24px !important;
    border-radius:26px !important;
    background:#f8fafc !important;
    border:1px solid #e5e7eb !important;
    box-shadow:0 18px 50px rgba(15,23,42,.05) !important;
}

.legal-toc strong{
    display:block !important;
    margin-bottom:14px !important;
    color:#0f172a !important;
    font-size:15px !important;
}

.legal-toc a{
    display:block !important;
    padding:10px 0 !important;
    color:#64748b !important;
    text-decoration:none !important;
    font-weight:800 !important;
    border-top:1px solid #e5e7eb !important;
}

.legal-card-stack{
    display:grid !important;
    gap:22px !important;
}

.legal-card{
    padding:34px !important;
    border-radius:28px !important;
    background:linear-gradient(180deg,#ffffff,#f8fafc) !important;
    border:1px solid #e5e7eb !important;
    box-shadow:0 22px 60px rgba(15,23,42,.06) !important;
}

.legal-card h2{
    margin:0 0 14px !important;
    color:#0f172a !important;
    font-size:28px !important;
    letter-spacing:-.04em !important;
}

.legal-card p{
    margin:0 0 14px !important;
    color:#64748b !important;
    font-size:16px !important;
    line-height:1.75 !important;
}

.legal-card p:last-child{
    margin-bottom:0 !important;
}

@media(max-width:900px){
    .legal-hero{
        padding:110px 0 54px !important;
    }

    .legal-grid{
        grid-template-columns:1fr !important;
    }

    .legal-toc{
        position:relative !important;
        top:auto !important;
    }

    .legal-content-section .public-section-inner,
    .legal-hero .public-section-inner{
        width:100% !important;
        padding-left:22px !important;
        padding-right:22px !important;
        box-sizing:border-box !important;
    }
}


/* RESET PASSWORD PREMIUM */
.premium-link-button{
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    box-sizing:border-box;
}


/* FINAL 404 PAGE FIX */
.premium-404-page{
    padding:170px 24px 95px !important;
    background:
        radial-gradient(circle at 18% 12%,rgba(37,99,235,.16),transparent 34%),
        radial-gradient(circle at 82% 18%,rgba(124,58,237,.18),transparent 36%),
        linear-gradient(180deg,#f8fbff 0%,#ffffff 100%) !important;
}

.premium-404-page .premium-404-grid{
    max-width:1180px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr) !important;
    gap:72px !important;
    align-items:center !important;
}

.premium-404-copy h1{
    margin:18px 0 22px !important;
    color:#0f172a !important;
    font-size:clamp(54px,6vw,88px) !important;
    line-height:.95 !important;
    letter-spacing:-.075em !important;
    max-width:760px !important;
}

.premium-404-copy p{
    max-width:680px !important;
    margin:0 0 32px !important;
    color:#64748b !important;
    font-size:20px !important;
    line-height:1.75 !important;
}

.premium-404-card{
    padding:42px !important;
    border-radius:34px !important;
    background:rgba(255,255,255,.92) !important;
    border:1px solid #e5e7eb !important;
    box-shadow:0 34px 100px rgba(15,23,42,.12) !important;
    text-align:center !important;
}

.premium-404-mark{
    width:86px !important;
    height:86px !important;
    margin:0 auto 24px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:28px !important;
    color:#fff !important;
    font-size:44px !important;
    font-weight:900 !important;
    background:linear-gradient(135deg,#2563eb,#7c3aed) !important;
    box-shadow:0 24px 60px rgba(79,70,229,.30) !important;
}

.premium-404-card h2{
    margin:0 0 12px !important;
    color:#0f172a !important;
    font-size:34px !important;
    letter-spacing:-.045em !important;
}

.premium-404-card p{
    margin:0 0 26px !important;
    color:#64748b !important;
    line-height:1.7 !important;
}

.premium-404-links{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
}

.premium-404-links a{
    display:block !important;
    padding:15px 16px !important;
    border-radius:16px !important;
    background:#f8fafc !important;
    border:1px solid #e5e7eb !important;
    color:#0f172a !important;
    text-decoration:none !important;
    font-weight:900 !important;
}

.premium-404-links a:hover{
    background:#eef2ff !important;
    color:#4f46e5 !important;
}

@media(max-width:900px){
    .premium-404-page{
        padding:120px 22px 64px !important;
    }

    .premium-404-page .premium-404-grid{
        grid-template-columns:1fr !important;
        gap:42px !important;
    }

    .premium-404-links{
        grid-template-columns:1fr !important;
    }
}


@media(max-width:900px){
    .premium-404-copy .marketing-actions{
        justify-content:center !important;
        align-items:center !important;
        text-align:center !important;
    }

    .premium-404-copy .marketing-actions a{
        text-align:center !important;
    }
}


/* Mobile CTA spacing fix */
@media (max-width: 768px){
    .marketing-cta-section.compact-cta{
        padding-left:20px !important;
        padding-right:20px !important;
    }

    .marketing-cta-section.compact-cta .public-section-inner,
    .marketing-cta-section.compact-cta .marketing-cta-box{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    .marketing-cta-section.compact-cta .marketing-cta-box{
        border-radius:32px !important;
    }
}


/* Mobile feature analytics chart fix */
@media (max-width: 768px){
    .features-chart-section{
        padding:72px 20px !important;
    }

    .features-chart-section .chart-grid{
        gap:28px !important;
    }

    .features-chart-section .analytics-board{
        padding:22px !important;
        border-radius:30px !important;
    }

    .features-chart-section .analytics-top{
        gap:12px !important;
        margin-bottom:14px !important;
    }

    .features-chart-section .analytics-top div{
        padding:18px !important;
        min-height:auto !important;
    }

    .features-chart-section .analytics-top strong{
        font-size:34px !important;
    }

    .features-chart-section .analytics-top span{
        font-size:13px !important;
    }

    .features-chart-section .line-chart{
        height:190px !important;
        padding:18px !important;
        border-radius:22px !important;
    }

    .features-chart-section .line-chart polyline{
        stroke-width:7 !important;
    }

    .features-chart-section .line-chart circle{
        r:4;
        stroke-width:4 !important;
    }
}

/* Force feature analytics bars visible */
.features-chart-section .analytics-bars{
    height:260px !important;
    min-height:260px !important;
    display:flex !important;
    align-items:flex-end !important;
}

.features-chart-section .analytics-bars span{
    display:block !important;
    height:var(--bar-h) !important;
    background:linear-gradient(180deg,#ffffff,#818cf8) !important;
    opacity:1 !important;
}

@media (max-width:768px){
    .features-chart-section .analytics-bars{
        height:210px !important;
        min-height:210px !important;
    }
}

/* Restore feature analytics SVG chart */
.features-chart-section .line-chart{
    height:300px !important;
    padding:24px !important;
    border-radius:24px !important;
    background:
        radial-gradient(circle at 75% 20%, rgba(129,140,248,.22), transparent 30%),
        rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.12) !important;
    overflow:hidden !important;
}

.features-chart-section .line-chart svg{
    display:block !important;
    width:100% !important;
    height:100% !important;
}

.features-chart-section .line-chart polyline{
    fill:none !important;
    stroke:url(#analyticsLine) !important;
    stroke-width:9 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
}

.features-chart-section .line-chart circle{
    fill:#fff !important;
    stroke:#6366f1 !important;
    stroke-width:6 !important;
}

@media (max-width:768px){
    .features-chart-section .line-chart{
        height:220px !important;
        padding:18px !important;
    }

    .features-chart-section .line-chart polyline{
        stroke-width:7 !important;
    }

    .features-chart-section .line-chart circle{
        r:5;
        stroke-width:5 !important;
    }
}

/* Feature analytics visible trend line */
.features-chart-section .line-chart{
    position:relative !important;
}

.features-chart-section .line-chart::after{
    content:"";
    position:absolute;
    left:46px;
    right:46px;
    top:58%;
    height:8px;
    border-radius:999px;
    background:linear-gradient(90deg,#818cf8,#a78bfa,#c084fc);
    transform:rotate(-16deg);
    transform-origin:center;
    box-shadow:0 12px 28px rgba(129,140,248,.28);
    z-index:1;
}

.features-chart-section .line-chart svg{
    position:relative !important;
    z-index:2 !important;
}

/* Feature analytics dashboard preview */
.features-chart-section .analytics-dashboard-preview{
    padding:26px !important;
    border-radius:34px !important;
    background:
        radial-gradient(circle at 85% 10%, rgba(124,58,237,.28), transparent 34%),
        linear-gradient(180deg,#111827,#1e1b4b) !important;
    box-shadow:0 34px 100px rgba(15,23,42,.28) !important;
}

.analytics-preview-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
}

.analytics-preview-head span{
    display:block;
    color:#a5b4fc;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.analytics-preview-head strong{
    display:block;
    margin-top:5px;
    color:#fff;
    font-size:24px;
    letter-spacing:-.04em;
}

.analytics-preview-head em{
    font-style:normal;
    color:#dcfce7;
    background:rgba(34,197,94,.16);
    border:1px solid rgba(34,197,94,.28);
    padding:8px 12px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
}

.analytics-preview-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-bottom:16px;
}

.analytics-preview-grid div{
    padding:16px;
    border-radius:20px;
    background:rgba(255,255,255,.09);
    border:1px solid rgba(255,255,255,.12);
}

.analytics-preview-grid span{
    display:block;
    color:#cbd5e1;
    font-size:12px;
    font-weight:800;
}

.analytics-preview-grid strong{
    display:block;
    margin-top:8px;
    color:#fff;
    font-size:26px;
    letter-spacing:-.05em;
}

.analytics-preview-chart{
    height:230px;
    padding:20px 18px 14px;
    border-radius:24px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.12);
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:12px;
    position:relative;
    overflow:hidden;
}

.analytics-preview-chart:before{
    content:"";
    position:absolute;
    inset:22px 18px 42px;
    background:
        linear-gradient(to bottom, rgba(255,255,255,.10) 1px, transparent 1px);
    background-size:100% 42px;
    opacity:.7;
}

.analytics-bar{
    position:relative;
    z-index:2;
    flex:1;
    height:100%;
    display:flex;
    align-items:flex-end;
    justify-content:center;
}

.analytics-bar:before{
    content:"";
    width:100%;
    max-width:34px;
    height:var(--h);
    border-radius:999px 999px 12px 12px;
    background:linear-gradient(180deg,#ddd6fe,#8b5cf6);
    box-shadow:0 18px 34px rgba(139,92,246,.32);
}

.analytics-bar span{
    position:absolute;
    bottom:-2px;
    transform:translateY(100%);
    color:#cbd5e1;
    font-size:11px;
    font-weight:800;
}

.analytics-preview-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-top:18px;
    padding:14px 16px;
    border-radius:18px;
    background:rgba(255,255,255,.09);
    border:1px solid rgba(255,255,255,.12);
}

.analytics-preview-footer span{
    color:#cbd5e1;
    font-weight:800;
}

.analytics-preview-footer strong{
    color:#fff;
    font-size:18px;
}

@media (max-width:768px){
    .features-chart-section .analytics-dashboard-preview{
        padding:22px !important;
        border-radius:30px !important;
    }

    .analytics-preview-grid{
        grid-template-columns:1fr;
    }

    .analytics-preview-chart{
        height:220px;
        gap:9px;
    }

    .analytics-preview-head strong{
        font-size:21px;
    }
}

/* Pricing page mobile spacing fix */
@media (max-width:768px){
    .pricing-hero,
    .pricing-plans-section{
        padding-left:20px !important;
        padding-right:20px !important;
        overflow:hidden !important;
    }

    .pricing-hero .public-section-inner,
    .pricing-plans-section .public-section-inner{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    .pricing-hero-copy,
    .pricing-plans-section .marketing-section-heading{
        max-width:100% !important;
        text-align:center !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }

    .pricing-hero-copy h1,
    .pricing-plans-section .marketing-section-heading h2{
        font-size:42px !important;
        line-height:1.04 !important;
        letter-spacing:-.055em !important;
        max-width:100% !important;
    }

    .pricing-hero-copy p,
    .pricing-plans-section .marketing-section-heading p{
        font-size:18px !important;
        line-height:1.65 !important;
        max-width:100% !important;
    }

    .pricing-grid,
    .pricing-plans-grid{
        width:100% !important;
        max-width:100% !important;
        grid-template-columns:1fr !important;
        gap:22px !important;
        box-sizing:border-box !important;
    }

    .pricing-card{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
        padding:28px !important;
        border-radius:30px !important;
        overflow:hidden !important;
    }

    .pricing-card h3{
        font-size:34px !important;
        line-height:1.05 !important;
    }

    .pricing-price strong{
        font-size:64px !important;
        letter-spacing:-.06em !important;
    }

    .pricing-card .public-btn,
    .pricing-card a{
        max-width:100% !important;
        box-sizing:border-box !important;
    }
}

/* Pricing lower sections mobile spacing fix */
@media (max-width:768px){
    .pricing-compare-section,
    .pricing-roi-section,
    .pricing-faq-section{
        padding-left:20px !important;
        padding-right:20px !important;
        overflow:hidden !important;
    }

    .pricing-compare-section .public-section-inner,
    .pricing-roi-section .public-section-inner,
    .pricing-faq-section .public-section-inner{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    .pricing-compare-section .marketing-section-heading,
    .pricing-roi-section .marketing-section-heading,
    .pricing-faq-section .marketing-section-heading{
        max-width:100% !important;
        text-align:center !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }

    .pricing-compare-section h2,
    .pricing-roi-section h2,
    .pricing-faq-section h2{
        font-size:38px !important;
        line-height:1.06 !important;
        letter-spacing:-.055em !important;
        max-width:100% !important;
    }

    .pricing-roi-section .marketing-section-heading p,
    .pricing-faq-section .marketing-section-heading p{
        font-size:18px !important;
        line-height:1.65 !important;
        max-width:100% !important;
    }

    .pricing-compare-card,
    .pricing-roi-card,
    .pricing-faq-card,
    .roi-calculator{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
        border-radius:30px !important;
        overflow:hidden !important;
    }

    .pricing-compare-card{
        padding:24px !important;
    }

    .pricing-roi-card,
    .roi-calculator{
        padding:26px !important;
    }
}

/* Final mobile fix - Compare Features + ROI */
@media (max-width:768px){

    .pricing-compare-section,
    .pricing-roi-section{
        padding:72px 20px !important;
    }

    .pricing-compare-section > .public-section-inner,
    .pricing-roi-section > .public-section-inner{
        padding:0 !important;
        margin:0 auto !important;
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    .pricing-compare-section .comparison-grid,
    .pricing-compare-section .compare-grid,
    .pricing-compare-section .plans-grid,
    .pricing-roi-section .roi-grid{
        width:100% !important;
        margin:0 !important;
    }

    .pricing-compare-section .comparison-card,
    .pricing-compare-section .compare-card,
    .pricing-compare-section .plan-compare-card,
    .pricing-roi-section .roi-calculator{
        width:100% !important;
        max-width:100% !important;
        margin:0 auto 22px !important;
        box-sizing:border-box !important;
    }
}

/* Exact pricing mobile overflow fixes */
@media (max-width:768px){

    .pricing-feature-table{
        width:calc(100% - 40px) !important;
        max-width:calc(100% - 40px) !important;
        margin-left:auto !important;
        margin-right:auto !important;
        box-sizing:border-box !important;
        overflow:hidden !important;
        border-radius:30px !important;
    }

    .roi-grid{
        width:calc(100% - 40px) !important;
        max-width:calc(100% - 40px) !important;
        margin-left:auto !important;
        margin-right:auto !important;
        box-sizing:border-box !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:28px !important;
    }

    .roi-copy{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
    }

    .roi-copy h2{
        font-size:38px !important;
        line-height:1.06 !important;
        letter-spacing:-.055em !important;
    }

    .roi-copy p{
        font-size:18px !important;
        line-height:1.65 !important;
    }

    .roi-card,
    .roi-calculator,
    .roi-visual{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }
}

/* Force pricing compare feature table off mobile edges */
@media (max-width:768px){
    .pricing-feature-table{
        width:auto !important;
        max-width:none !important;
        margin-left:20px !important;
        margin-right:20px !important;
        box-sizing:border-box !important;
    }
}

/* Hard fix pricing compare mobile width */
@media (max-width:768px){
    .pricing-plans-section:has(.pricing-feature-table){
        padding-left:20px !important;
        padding-right:20px !important;
        box-sizing:border-box !important;
    }

    .pricing-plans-section:has(.pricing-feature-table) .public-section-inner{
        width:100% !important;
        max-width:100% !important;
        padding-left:0 !important;
        padding-right:0 !important;
        box-sizing:border-box !important;
    }

    .pricing-plans-section:has(.pricing-feature-table) .marketing-section-heading h2{
        font-size:36px !important;
        line-height:1.08 !important;
        max-width:100% !important;
    }

    .pricing-feature-table{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }
}

/* Exact mobile fix for pricing comparison section */
@media (max-width:768px){
    .pricing-comparison-section{
        padding-left:20px !important;
        padding-right:20px !important;
        overflow:hidden !important;
        box-sizing:border-box !important;
    }

    .pricing-comparison-section .public-section-inner{
        width:100% !important;
        max-width:100% !important;
        padding-left:0 !important;
        padding-right:0 !important;
        margin-left:auto !important;
        margin-right:auto !important;
        box-sizing:border-box !important;
    }

    .pricing-comparison-section .marketing-section-heading{
        max-width:100% !important;
        text-align:center !important;
    }

    .pricing-comparison-section .marketing-section-heading h2{
        font-size:36px !important;
        line-height:1.08 !important;
        letter-spacing:-.055em !important;
    }

    .pricing-comparison-section .pricing-feature-table,
    .pricing-comparison-section .pricing-mobile-accordion{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
        box-sizing:border-box !important;
    }

    .pricing-comparison-section .pricing-mobile-accordion details{
        width:100% !important;
        box-sizing:border-box !important;
    }
}

/* Premium homepage hero */
.rl-premium-hero {
    position: relative;
    min-height: 92vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    background: #020617;
    color: #fff;
    isolation: isolate;
}

.rl-premium-hero-bg,
.rl-premium-hero-slide,
.rl-premium-hero-overlay {
    position: absolute;
    inset: 0;
}

.rl-premium-hero-bg {
    z-index: 0;
}

.rl-premium-hero-slide {
    opacity: 0;
    transform: scale(1.04);
    transition: opacity 1.2s ease, transform 6s ease;
    background-size: cover;
    background-position: center;
}

.rl-premium-hero-slide.is-active {
    opacity: 1;
    transform: scale(1);
}

.rl-premium-hero-slide[data-industry="cafe"] {
    background-image:
        linear-gradient(90deg, rgba(2,6,23,.94) 0%, rgba(2,6,23,.70) 44%, rgba(2,6,23,.22) 100%),
        url('/assets/images/hero/cafe.png');
}

.rl-premium-hero-slide[data-industry="salon"] {
    background-image:
        linear-gradient(90deg, rgba(2,6,23,.94) 0%, rgba(2,6,23,.70) 44%, rgba(2,6,23,.22) 100%),
        url('/assets/images/hero/salon.png');
}

.rl-premium-hero-slide[data-industry="restaurant"] {
    background-image:
        linear-gradient(90deg, rgba(2,6,23,.94) 0%, rgba(2,6,23,.70) 44%, rgba(2,6,23,.22) 100%),
        url('/assets/images/hero/restaurant.png');
}

.rl-premium-hero-slide[data-industry="pizzeria"] {
    background-image:
        linear-gradient(90deg, rgba(2,6,23,.94) 0%, rgba(2,6,23,.70) 44%, rgba(2,6,23,.22) 100%),
        url('/assets/images/hero/pizzeria.png');
}

.rl-premium-hero-overlay {
    z-index: 1;
    pointer-events: none;
    background:
        radial-gradient(circle at 20% 28%, rgba(124,58,237,.30), transparent 30%),
        linear-gradient(180deg, rgba(2,6,23,.10) 0%, rgba(2,6,23,.45) 68%, rgba(248,250,252,0) 100%);
}

.rl-premium-hero::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 34%;
    z-index: 2;
    pointer-events: none;
    background: linear-gradient(
        180deg,
        rgba(248,250,252,0) 0%,
        rgba(248,250,252,.05) 22%,
        rgba(248,250,252,.20) 44%,
        rgba(248,250,252,.50) 66%,
        rgba(248,250,252,.82) 84%,
        #f8fafc 100%
    );
}

.rl-premium-hero-inner {
    position: relative;
    z-index: 3;
    width: min(1180px, calc(100% - 48px));
    margin: 0 auto;
    padding: 132px 0 190px;
}

.rl-premium-hero-copy {
    max-width: 650px;
}

.rl-premium-hero-copy h1 {
    margin: 20px 0 22px;
    font-size: clamp(48px, 7vw, 86px);
    line-height: .92;
    letter-spacing: -.07em;
    color: #fff;
}

.rl-premium-hero-copy h1 span {
    display: block;
    color: #c4b5fd;
}

.rl-premium-hero-copy p {
    max-width: 610px;
    margin: 0;
    color: #e2e8f0;
    font-size: 20px;
    line-height: 1.7;
}

.rl-premium-reward-card,
.rl-premium-industry-tabs {
    display: none;
}

.public-trusted {
    position: relative;
    z-index: 4;
    margin-top: 0;
    background: #f8fafc;
}

@media (max-width: 980px) {
    .rl-premium-hero {
        min-height: 820px;
        align-items: flex-start;
    }

    .rl-premium-hero-slide {
        background-position: 62% center;
    }

    .rl-premium-hero-inner {
        width: min(100% - 40px, 1180px);
        padding: 124px 0 210px;
    }

    .rl-premium-hero-copy {
        max-width: 620px;
    }

    .rl-premium-hero-copy h1 {
        font-size: clamp(44px, 8vw, 68px);
        line-height: .96;
    }

    .rl-premium-hero-copy p {
        font-size: 18px;
        line-height: 1.65;
    }

    .rl-premium-hero::after {
        height: 38%;
    }
}

@media (max-width: 640px) {
    .rl-premium-hero {
        min-height: 900px;
    }

    .rl-premium-hero-slide {
        background-position: 68% center;
    }

    .rl-premium-hero-slide[data-industry] {
        background-image:
            linear-gradient(180deg, rgba(2,6,23,.92) 0%, rgba(2,6,23,.78) 42%, rgba(2,6,23,.40) 72%, rgba(248,250,252,0) 100%),
            var(--unused);
    }

    .rl-premium-hero-slide[data-industry="cafe"] {
        background-image:
            linear-gradient(180deg, rgba(2,6,23,.92) 0%, rgba(2,6,23,.78) 42%, rgba(2,6,23,.40) 72%, rgba(248,250,252,0) 100%),
            url('/assets/images/hero/cafe.png');
    }

    .rl-premium-hero-slide[data-industry="salon"] {
        background-image:
            linear-gradient(180deg, rgba(2,6,23,.92) 0%, rgba(2,6,23,.78) 42%, rgba(2,6,23,.40) 72%, rgba(248,250,252,0) 100%),
            url('/assets/images/hero/salon.png');
    }

    .rl-premium-hero-slide[data-industry="restaurant"] {
        background-image:
            linear-gradient(180deg, rgba(2,6,23,.92) 0%, rgba(2,6,23,.78) 42%, rgba(2,6,23,.40) 72%, rgba(248,250,252,0) 100%),
            url('/assets/images/hero/restaurant.png');
    }

    .rl-premium-hero-slide[data-industry="pizzeria"] {
        background-image:
            linear-gradient(180deg, rgba(2,6,23,.92) 0%, rgba(2,6,23,.78) 42%, rgba(2,6,23,.40) 72%, rgba(248,250,252,0) 100%),
            url('/assets/images/hero/pizzeria.png');
    }

    .rl-premium-hero-inner {
        width: calc(100% - 32px);
        padding: 112px 0 260px;
    }

    .rl-premium-hero-copy h1 {
        margin: 24px 0 20px;
        font-size: clamp(42px, 13vw, 54px);
        line-height: .98;
        letter-spacing: -.055em;
    }

    .rl-premium-hero-copy p {
        font-size: 17px;
        line-height: 1.62;
    }

    .rl-premium-hero .public-hero-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: 14px;
        margin-top: 30px;
    }

    .rl-premium-hero .public-hero-actions a {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .rl-premium-hero .hero-trust-points {
        display: grid;
        grid-template-columns: 1fr;
        gap: 12px;
        margin-top: 28px;
    }

    .rl-premium-hero .hero-social-proof {
        margin-top: 26px;
    }

    .rl-premium-hero::after {
        height: 45%;
    }
}

@media (max-width: 420px) {
    .rl-premium-hero {
        min-height: 940px;
    }

    .rl-premium-hero-copy h1 {
        font-size: 42px;
    }

    .rl-premium-hero-copy p {
        font-size: 16.5px;
    }
}

/* Launch QA: form validation states */
.premium-signup-card input.is-invalid,
.premium-signup-card select.is-invalid,
.premium-login-card input.is-invalid{
    border-color:#ef4444;
    background:#fff7f7;
    box-shadow:0 0 0 5px rgba(239,68,68,.12);
}

/* Success messages */
.premium-success-message{
    margin:0 0 24px;
    padding:16px 18px;
    border-radius:16px;
    background:#ecfdf5;
    border:1px solid #bbf7d0;
    color:#166534;
    font-weight:600;
    line-height:1.6;
}



/* Growth pricing badge spacing */
.pricing-v3-card.popular .pricing-ribbon{
    top:12px !important;
    right:18px !important;
}

.pricing-v3-card.popular .plan-tag{
    margin-top:0 !important;
}

/* Staff login mobile layout: constrained viewport and ordered sections */
@media (max-width: 768px) {
  .premium-login-page {
    display: block;
    width: 100%;
    min-width: 0;
    padding: 42px 20px 50px;
    box-sizing: border-box;
  }
  .premium-login-page > .premium-login-grid.public-section-inner {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: 100%;
    max-width: 520px;
    min-width: 0;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
  }
  .premium-login-copy { display: contents; }
  .premium-login-brand { order: 1; align-self: flex-start; margin: 0 0 24px; max-width: 100%; }
  .premium-login-copy > .public-section-kicker { order: 2; align-self: flex-start; }
  .premium-login-copy > h1 {
    order: 3;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 18px 0;
    font-size: clamp(30px, 8vw, 40px);
    line-height: 1.12;
    letter-spacing: -.045em;
    overflow-wrap: anywhere;
  }
  .premium-login-copy > p {
    order: 4;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    font-size: 16px;
    line-height: 1.6;
    overflow-wrap: anywhere;
  }
  .premium-login-card-wrap { order: 5; width: 100%; max-width: 100%; min-width: 0; margin-top: 28px; }
  .premium-login-card { width: 100%; max-width: 100%; min-width: 0; padding: 20px; box-sizing: border-box; }
  .premium-form-head { min-width: 0; }
  .premium-form-head > span { flex: 0 0 54px; }
  .premium-form-head > div { min-width: 0; }
  .premium-form-head strong { font-size: 18px; overflow-wrap: anywhere; }
  .premium-login-benefits {
    order: 6;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 24px 0 0;
    padding: 0;
    box-sizing: border-box;
  }
  .premium-login-benefits > div {
    min-width: 0;
    width: auto;
    max-width: 100%;
    padding: 14px;
    margin: 0;
    box-sizing: border-box;
  }
  .premium-login-benefits strong { font-size: 15px; overflow-wrap: anywhere; }
  .premium-login-benefits small { overflow-wrap: anywhere; }
}

