:root{
    --ca-card: rgba(255,255,255,.96);
    --ca-text: #0f172a;
    --ca-muted: #64748b;
    --ca-primary: #2563eb;
    --ca-primary2: #4f46e5;
    --ca-primary3: #0ea5e9;
    --ca-green: #16a34a;
    --ca-green2: #22c55e;
    --ca-purple: #7c3aed;
    --ca-purple2: #a855f7;
    --ca-orange: #f59e0b;
    --ca-orange2: #fb923c;
    --ca-red: #dc2626;
    --ca-red2: #ef4444;
    --ca-shadow: 0 8px 22px rgba(15,23,42,.06);
    --ca-shadow-lg: 0 12px 28px rgba(37,99,235,.10);
}

*,
*::before,
*::after{
    box-sizing: border-box;
}

html{
    scroll-behavior: smooth;
}

body,
h1,h2,h3,h4,h5,h6,
p,span,a,li,div,strong,b,small,label,
input,button,textarea,select,option,
table,thead,tbody,tr,th,td{
    font-family: Arial, Helvetica, sans-serif !important;
}

body{
    margin: 0;
    overflow-x: hidden;
    color: var(--ca-text);
    background:
        radial-gradient(circle at 0% 0%, rgba(37, 99, 235, .07), transparent 26%),
        radial-gradient(circle at 100% 0%, rgba(79, 70, 229, .06), transparent 24%),
        linear-gradient(180deg, #f8fbff 0%, #f4f7ff 100%);
}

img{
    max-width:100%;
    display:block;
    height:auto;
}

a{
    text-decoration:none;
    color:inherit;
}

.ca-page{
    position:relative;
    min-height:100vh;
    overflow:hidden;
}

.ca-orb{
    position:absolute;
    border-radius:50%;
    filter:blur(12px);
    pointer-events:none;
    animation:caFloatOrb 14s ease-in-out infinite;
    opacity:.28;
}

.ca-orb-1{
    width:220px;
    height:220px;
    top:100px;
    left:-70px;
    background:radial-gradient(circle, rgba(37,99,235,.18), transparent 68%);
}

.ca-orb-2{
    width:260px;
    height:260px;
    top:40px;
    right:-80px;
    background:radial-gradient(circle, rgba(124,58,237,.14), transparent 68%);
    animation-delay:1.5s;
}

.ca-orb-3{
    width:220px;
    height:220px;
    bottom:120px;
    left:50%;
    transform:translateX(-50%);
    background:radial-gradient(circle, rgba(14,165,233,.12), transparent 68%);
    animation-delay:3s;
}

@keyframes caFloatOrb{
    0%,100%{ transform:translateY(0px) scale(1); }
    50%{ transform:translateY(-12px) scale(1.02); }
}

.ca-loader{
    position:fixed;
    inset:0;
    background:rgba(255,255,255,.97);
    z-index:99999;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all .25s ease;
}

.ca-loader.hide{
    opacity:0;
    visibility:hidden;
    pointer-events:none;
}

.ca-loader-box{
    text-align:center;
}

.ca-spinner{
    width:46px;
    height:46px;
    border:4px solid #dbeafe;
    border-top-color:var(--ca-primary);
    border-radius:50%;
    margin:0 auto 14px;
    animation:caSpin .8s linear infinite;
}

@keyframes caSpin{
    to{ transform:rotate(360deg); }
}

.ca-loader-text{
    font-size:15px;
    font-weight:800;
    color:var(--ca-primary);
    letter-spacing:.02em;
}

.ca-hero{
    position:relative;
    padding:34px 0 28px;
}

.ca-hero-inner{
    position:relative;
    z-index:2;
}

.ca-hero-shell{
    position:relative;
    background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(255,255,255,.90));
    border:1px solid rgba(255,255,255,.96);
    border-radius:30px;
    box-shadow:var(--ca-shadow-lg);
    padding:26px;
    overflow:hidden;
}

.ca-hero-grid{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:1fr;
    gap:20px;
    align-items:start;
}

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

.ca-hero-center{
    text-align:center;
    max-width:980px;
    margin:0 auto;
}

.ca-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 16px;
    border-radius:999px;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(37,99,235,.12);
    box-shadow:var(--ca-shadow);
    color:var(--ca-primary);
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.ca-badge-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--ca-green2);
}

.ca-title{
    margin:18px 0 14px;
    font-size:clamp(34px, 6vw, 66px);
    line-height:1.03;
    font-weight:800;
    letter-spacing:-.04em;
}

.ca-title span{
    background:linear-gradient(90deg, var(--ca-primary), var(--ca-primary3), var(--ca-primary2));
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
}

.ca-desc{
    margin:0;
    max-width:760px;
    color:var(--ca-muted);
    font-size:16px;
    line-height:1.85;
}

.ca-desc-center{
    margin-left:auto;
    margin-right:auto;
}

.ca-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:22px;
}

.ca-actions-center{
    justify-content:center;
}

.ca-top-buttons .ca-btn{
    min-width:210px;
}

.ca-tags{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
}

.ca-tags-center{
    justify-content:center;
}

.ca-tags span{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 14px;
    border-radius:999px;
    background:#fff;
    border:1px solid #e2e8f0;
    color:#334155;
    font-size:13px;
    font-weight:700;
}

.ca-mini-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:14px;
    margin-top:22px;
}

.ca-mini-grid-4{
    grid-template-columns:repeat(4, minmax(0,1fr));
}

.ca-mini-card{
    padding:18px;
    border-radius:22px;
    background:var(--ca-card);
    border:1px solid rgba(255,255,255,.95);
    box-shadow:var(--ca-shadow);
    transition:.22s ease;
    height:100%;
}

.ca-mini-card:hover{
    transform:translateY(-2px);
    box-shadow:var(--ca-shadow-lg);
}

.ca-mini-icon{
    width:50px;
    height:50px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:12px;
    font-size:19px;
}

.ca-mini-card h3{
    margin:0 0 8px;
    font-size:16px;
    font-weight:800;
}

.ca-mini-card p{
    margin:0;
    color:var(--ca-muted);
    font-size:14px;
    line-height:1.75;
}

.ca-section{
    padding:60px 0;
    position:relative;
    z-index:2;
}

.ca-pt-0{
    padding-top:0 !important;
}

.ca-head{
    margin-bottom:28px;
}

.ca-head.text-center{
    text-align:center;
}

.ca-kicker{
    display:inline-block;
    font-size:12px;
    font-weight:800;
    color:var(--ca-primary);
    text-transform:uppercase;
    letter-spacing:.14em;
    margin-bottom:10px;
}

.ca-section-title{
    margin:0 0 10px;
    font-size:clamp(26px, 4vw, 40px);
    line-height:1.15;
    font-weight:800;
    letter-spacing:-.02em;
}

.ca-section-desc{
    margin:0;
    max-width:760px;
    color:var(--ca-muted);
    font-size:15px;
    line-height:1.85;
}

.ca-section-desc-center{
    margin-left:auto;
    margin-right:auto;
}

.ca-stats-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:18px;
}

.ca-stats-card{
    position:relative;
    overflow:hidden;
    background:var(--ca-card);
    border:1px solid rgba(255,255,255,.95);
    border-radius:24px;
    padding:22px;
    box-shadow:var(--ca-shadow);
    transition:.22s ease;
    height:100%;
}

.ca-stats-card:hover{
    transform:translateY(-2px);
    box-shadow:var(--ca-shadow-lg);
}

.ca-stats-icon{
    width:54px;
    height:54px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:20px;
    margin-bottom:14px;
}

.ca-stats-num{
    font-size:34px;
    line-height:1;
    font-weight:800;
    margin-bottom:10px;
}

.ca-stats-num-date{
    font-size:28px;
}

.ca-stats-label{
    font-size:16px;
    font-weight:800;
    margin-bottom:6px;
}

.ca-stats-sub{
    color:var(--ca-muted);
    font-size:14px;
    line-height:1.75;
}

.ca-layout{
    display:grid;
    grid-template-columns:1.2fr .9fr;
    gap:20px;
    align-items:start;
}

.ca-layout-single{
    grid-template-columns:1fr;
}

.ca-card{
    background:var(--ca-card);
    border:1px solid rgba(255,255,255,.95);
    border-radius:28px;
    box-shadow:var(--ca-shadow);
    overflow:hidden;
}

.ca-feature-card{
    padding:28px;
    position:relative;
}

.ca-feature-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 14px;
    border-radius:999px;
    background:#eff6ff;
    border:1px solid #dbeafe;
    color:var(--ca-primary);
    font-size:12px;
    font-weight:800;
    margin-bottom:14px;
}

.ca-feature-card h3{
    margin:0 0 12px;
    font-size:32px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:-.02em;
}

.ca-feature-card p{
    margin:0 0 18px;
    color:var(--ca-muted);
    font-size:15px;
    line-height:1.85;
}

.ca-feature-list{
    display:grid;
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:14px;
}

.ca-feature-item{
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px;
    background:#fff;
    border:1px solid #edf2f7;
    border-radius:18px;
}

.ca-feature-icon{
    width:42px;
    height:42px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(37,99,235,.08);
    color:var(--ca-primary);
    flex:0 0 42px;
}

.ca-feature-item strong{
    display:block;
    font-size:15px;
    margin-bottom:4px;
}

.ca-feature-item span{
    display:block;
    color:var(--ca-muted);
    font-size:13px;
    line-height:1.7;
}

.ca-trust-box{
    margin-top:18px;
}

.ca-side-card{
    padding:24px;
}

.ca-side-top{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:14px;
}

.ca-side-icon{
    width:56px;
    height:56px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    color:#fff;
    flex:0 0 56px;
}

.ca-side-kicker{
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.12em;
    opacity:.92;
    margin-bottom:4px;
}

.ca-side-card h3{
    margin:0;
    font-size:20px;
    font-weight:800;
}

.ca-side-card p{
    margin:0 0 16px;
    color:var(--ca-muted);
    font-size:14px;
    line-height:1.8;
}

.ca-side-list{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-bottom:18px;
}

.ca-side-item{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:14px;
    background:#fff;
    border:1px solid #edf2f7;
    border-radius:18px;
    color:#334155;
    font-size:14px;
    line-height:1.7;
}

.ca-side-item i{
    color:var(--ca-primary);
    margin-top:3px;
}

.ca-full-btn{
    width:100%;
}

.ca-service-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:18px;
}

.ca-service-card{
    position:relative;
    overflow:hidden;
    display:block;
    background:var(--ca-card);
    border:1px solid rgba(255,255,255,.95);
    border-radius:24px;
    padding:22px;
    box-shadow:var(--ca-shadow);
    transition:.22s ease;
    height:100%;
}

.ca-service-card:hover{
    transform:translateY(-2px);
    box-shadow:var(--ca-shadow-lg);
}

.ca-service-icon{
    width:56px;
    height:56px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    margin-bottom:16px;
}

.ca-service-card h3{
    margin:0 0 10px;
    font-size:18px;
    font-weight:800;
}

.ca-service-card p{
    margin:0 0 16px;
    color:var(--ca-muted);
    font-size:14px;
    line-height:1.8;
}

.ca-service-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:14px;
    font-weight:800;
    color:var(--ca-primary);
}

.ca-cta{
    position:relative;
    overflow:hidden;
    border-radius:30px;
    padding:30px;
    background:linear-gradient(135deg, #2563eb, #4f46e5);
    color:#fff;
    box-shadow:0 18px 40px rgba(37,99,235,.18);
}

.ca-cta-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.14);
    border:1px solid rgba(255,255,255,.18);
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    margin-bottom:14px;
}

.ca-cta h2{
    margin:0 0 10px;
    font-size:clamp(24px, 4vw, 38px);
    line-height:1.2;
    font-weight:800;
}

.ca-cta p{
    margin:0 0 18px;
    max-width:700px;
    color:rgba(255,255,255,.90);
    font-size:15px;
    line-height:1.85;
}

.ca-cta-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

.ca-btn{
    min-height:52px;
    padding:12px 20px;
    border-radius:16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:0;
    font-size:14px;
    font-weight:800;
    transition:.22s ease;
    cursor:pointer;
}

.ca-btn:hover{
    transform:translateY(-2px);
}

.ca-btn-primary{
    color:#fff;
    background:linear-gradient(135deg, var(--ca-primary), var(--ca-primary2));
    box-shadow:0 10px 22px rgba(37,99,235,.18);
}

.ca-btn-success{
    color:#fff;
    background:linear-gradient(135deg, #22c55e, #16a34a);
    box-shadow:0 10px 22px rgba(34,197,94,.18);
}

.ca-btn-danger{
    color:#fff;
    background:linear-gradient(135deg, #ef4444, #dc2626);
    box-shadow:0 10px 22px rgba(239,68,68,.20);
}

.ca-btn-light{
    color:var(--ca-text);
    background:#fff;
    border:1px solid #e2e8f0;
}

.ca-shine{
    position:relative;
    overflow:hidden;
}

.ca-shine::after{
    content:"";
    position:absolute;
    top:-120%;
    left:-40%;
    width:40%;
    height:300%;
    transform:rotate(20deg);
    background:linear-gradient(90deg, transparent, rgba(255,255,255,.35), transparent);
    animation:caShineMove 6s linear infinite;
}

@keyframes caShineMove{
    0%{ left:-45%; }
    100%{ left:130%; }
}

.ca-theme-blue{
    --theme-main:#2563eb;
    --theme-soft:rgba(37,99,235,.10);
    --theme-grad:linear-gradient(135deg, #2563eb, #0ea5e9);
}

.ca-theme-blue .ca-mini-icon,
.ca-theme-blue .ca-stats-icon,
.ca-theme-blue .ca-service-icon{
    background:var(--theme-soft);
    color:var(--theme-main);
}

.ca-theme-blue .ca-side-icon{
    background:var(--theme-grad);
}

.ca-theme-green{
    --theme-main:#16a34a;
    --theme-soft:rgba(34,197,94,.10);
    --theme-grad:linear-gradient(135deg, #22c55e, #16a34a);
}

.ca-theme-green .ca-mini-icon,
.ca-theme-green .ca-stats-icon,
.ca-theme-green .ca-service-icon{
    background:var(--theme-soft);
    color:var(--theme-main);
}

.ca-theme-green .ca-side-icon{
    background:var(--theme-grad);
}

.ca-theme-purple{
    --theme-main:#7c3aed;
    --theme-soft:rgba(124,58,237,.10);
    --theme-grad:linear-gradient(135deg, #7c3aed, #a855f7);
}

.ca-theme-purple .ca-mini-icon,
.ca-theme-purple .ca-stats-icon,
.ca-theme-purple .ca-service-icon{
    background:var(--theme-soft);
    color:var(--theme-main);
}

.ca-theme-purple .ca-side-icon{
    background:var(--theme-grad);
}

.ca-theme-orange{
    --theme-main:#f59e0b;
    --theme-soft:rgba(245,158,11,.12);
    --theme-grad:linear-gradient(135deg, #f59e0b, #fb923c);
}

.ca-theme-orange .ca-mini-icon,
.ca-theme-orange .ca-stats-icon,
.ca-theme-orange .ca-service-icon{
    background:var(--theme-soft);
    color:var(--theme-main);
}

.ca-theme-orange .ca-side-icon{
    background:var(--theme-grad);
}

.reveal{
    opacity:0;
    transform:translateY(16px);
    transition:opacity .35s ease, transform .35s ease;
}

.reveal.show{
    opacity:1;
    transform:translateY(0);
}

@media (max-width: 1199.98px){
    .ca-stats-grid,
    .ca-service-grid,
    .ca-mini-grid-4{
        grid-template-columns:repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 767.98px){
    .ca-orb,
    .ca-shine::after{
        display:none;
    }

    .ca-hero{
        padding-top:24px;
    }

    .ca-hero-shell{
        padding:18px;
        border-radius:24px;
    }

    .ca-title{
        font-size:40px;
    }

    .ca-desc{
        font-size:15px;
    }

    .ca-actions,
    .ca-cta-actions{
        flex-direction:column;
    }

    .ca-actions .ca-btn,
    .ca-cta-actions .ca-btn,
    .ca-top-buttons .ca-btn{
        width:100%;
        min-width:100%;
    }

    .ca-mini-grid,
    .ca-mini-grid-4,
    .ca-stats-grid,
    .ca-service-grid,
    .ca-feature-list{
        grid-template-columns:1fr;
    }

    .ca-section{
        padding:50px 0;
    }

    .ca-section-title{
        font-size:28px;
    }

    .ca-feature-card,
    .ca-side-card,
    .ca-cta{
        padding:20px;
    }

    .ca-mini-card,
    .ca-stats-card,
    .ca-service-card,
    .ca-card{
        border-radius:20px;
    }
}