:root{
    --primary:#071b3a;
    --primary-2:#0b2a5a;
    --blue:#1557ff;
    --cyan:#18d2ff;
    --cyan-soft:#e9fbff;
    --light:#f5f7fb;
    --light-2:#eef2f8;
    --white:#ffffff;
    --text:#415069;
    --muted:#6d7890;
    --border:#dfe7f2;
    --shadow:0 18px 45px rgba(7,27,58,.10);
    --shadow-soft:0 10px 30px rgba(7,27,58,.08);
    --radius:24px;
    --radius-sm:16px;
    --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color:var(--text);
    background:var(--white);
    line-height:1.6;
    overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
p{margin:0 0 1rem}
h1,h2,h3,h4{color:var(--primary);line-height:1.12;margin:0 0 1rem;letter-spacing:-.035em}
h1{font-size:clamp(2.45rem, 6vw, 5.25rem)}
h2{font-size:clamp(2rem, 4vw, 3.35rem)}
h3{font-size:1.35rem}
.container{width:min(calc(100% - 32px), var(--container));margin-inline:auto}
.section{padding:92px 0}
.section-light{background:linear-gradient(180deg,var(--light),#fff)}
.section-gray{background:var(--light)}
.eyebrow{
    display:inline-flex;
    align-items:center;
    gap:.55rem;
    font-weight:800;
    color:var(--blue);
    background:var(--cyan-soft);
    border:1px solid rgba(24,210,255,.35);
    padding:.5rem .85rem;
    border-radius:999px;
    margin-bottom:1rem;
    font-size:.85rem;
    letter-spacing:.02em;
}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:999px;background:linear-gradient(135deg,var(--blue),var(--cyan))}
.lead{font-size:1.16rem;color:var(--muted);max-width:760px}
.section-heading{max-width:780px;margin:0 auto 44px;text-align:center}
.section-heading.left{text-align:left;margin-left:0}
.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    border:none;
    border-radius:999px;
    padding:.98rem 1.35rem;
    background:linear-gradient(135deg,var(--blue),var(--cyan));
    color:#fff;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 14px 26px rgba(21,87,255,.22);
    transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 18px 35px rgba(21,87,255,.28);filter:saturate(1.08)}
.btn-outline{
    background:#fff;
    color:var(--primary);
    border:1px solid var(--border);
    box-shadow:none;
}
.btn-light{background:#fff;color:var(--primary);box-shadow:none}
.btn-small{padding:.72rem 1rem;font-size:.92rem}
.btn-full{width:100%}

/* Header */
.site-header{
    position:sticky;
    top:0;
    z-index:99;
    background:rgba(255,255,255,.88);
    backdrop-filter:blur(16px);
    border-bottom:1px solid rgba(223,231,242,.78);
    transition:box-shadow .2s ease, background .2s ease;
}
.site-header.scrolled{box-shadow:0 12px 35px rgba(7,27,58,.08);background:rgba(255,255,255,.96)}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:1rem}
.brand{display:flex;align-items:center;min-width:176px}
.brand img{width:190px;height:auto;object-fit:contain}
.main-nav{display:flex;align-items:center;gap:1.05rem;font-size:.96rem;font-weight:700;color:var(--primary)}
.main-nav a:not(.btn){position:relative;white-space:nowrap}
.main-nav a:not(.btn)::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-8px;
    height:2px;
    width:0;
    border-radius:999px;
    background:linear-gradient(90deg,var(--blue),var(--cyan));
    transition:width .2s ease;
}
.main-nav a:not(.btn):hover::after{width:100%}
.nav-toggle{display:none;width:44px;height:44px;border:1px solid var(--border);background:#fff;border-radius:12px;padding:10px;cursor:pointer}
.nav-toggle span{display:block;height:2px;background:var(--primary);margin:5px 0;border-radius:99px;transition:.2s ease}
.nav-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.active span:nth-child(2){opacity:0}
.nav-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* Hero */
.hero{position:relative;overflow:hidden;padding:98px 0 80px;background:radial-gradient(circle at 82% 8%, rgba(24,210,255,.20), transparent 30%), radial-gradient(circle at 8% 18%, rgba(21,87,255,.10), transparent 28%), #fff}
.hero::before{content:"";position:absolute;inset:auto -160px -240px auto;width:480px;height:480px;border-radius:50%;background:rgba(24,210,255,.14);filter:blur(24px)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center;position:relative;z-index:1}
.hero-copy h1 span{background:linear-gradient(135deg,var(--blue),var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.8rem}
.hero-points{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem;color:var(--primary);font-weight:750}
.hero-points span{background:var(--light);border:1px solid var(--border);border-radius:999px;padding:.55rem .75rem}
.hero-visual{position:relative;min-height:470px;display:flex;align-items:center;justify-content:center}
.hero-visual .dashboard-img{width:min(100%,620px);filter:drop-shadow(0 28px 42px rgba(7,27,58,.16))}
.floating-card{
    position:absolute;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(223,231,242,.85);
    border-radius:18px;
    box-shadow:var(--shadow-soft);
    padding:.85rem 1rem;
    color:var(--primary);
    font-weight:800;
    backdrop-filter:blur(10px);
}
.floating-card small{display:block;color:var(--muted);font-weight:700;font-size:.78rem}
.float-1{left:3%;top:16%}
.float-2{right:0;bottom:20%}
.float-3{left:13%;bottom:7%}
.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:54px}
.stat-card{background:#fff;border:1px solid var(--border);border-radius:20px;padding:1.25rem;box-shadow:var(--shadow-soft)}
.stat-card strong{display:block;color:var(--primary);font-size:1.8rem;line-height:1}
.stat-card span{font-size:.95rem;color:var(--muted);font-weight:700}

/* Cards */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{
    background:#fff;
    border:1px solid var(--border);
    border-radius:var(--radius);
    padding:1.45rem;
    box-shadow:var(--shadow-soft);
    transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:rgba(21,87,255,.25)}
.card-icon{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,rgba(21,87,255,.12),rgba(24,210,255,.18));display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:var(--blue);font-weight:900;font-size:1.35rem}
.card p{color:var(--muted)}
.system-card{overflow:hidden;padding:0}
.system-card img{width:100%;height:210px;object-fit:cover;background:var(--light)}
.system-content{padding:1.35rem}
.system-meta{display:inline-flex;font-size:.82rem;font-weight:800;color:var(--blue);background:var(--cyan-soft);padding:.35rem .65rem;border-radius:999px;margin-bottom:.75rem}
.feature-list{display:grid;gap:.55rem;margin:1rem 0 1.15rem;padding:0;list-style:none;color:var(--text);font-weight:650}
.feature-list li{display:flex;gap:.45rem;align-items:flex-start}
.feature-list li::before{content:"✓";color:var(--blue);font-weight:900}

/* Split sections */
.split-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:54px;align-items:center}
.image-panel{position:relative;background:#fff;border:1px solid var(--border);border-radius:32px;padding:1.2rem;box-shadow:var(--shadow)}
.image-panel::after{content:"";position:absolute;inset:auto 28px -18px 28px;height:42px;border-radius:50%;background:rgba(7,27,58,.12);filter:blur(18px);z-index:-1}
.image-panel img{width:100%;border-radius:24px}
.steps{display:grid;gap:1rem;counter-reset:step}
.step{display:grid;grid-template-columns:auto 1fr;gap:1rem;background:#fff;border:1px solid var(--border);border-radius:20px;padding:1.2rem;box-shadow:var(--shadow-soft)}
.step::before{counter-increment:step;content:counter(step);width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900}
.step h3{margin-bottom:.25rem}
.step p{margin:0;color:var(--muted)}

/* Nichos */
.niche-grid{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}
.niche-pill{background:#fff;border:1px solid var(--border);border-radius:999px;padding:.78rem 1rem;font-weight:800;color:var(--primary);box-shadow:0 8px 18px rgba(7,27,58,.05)}

/* Pricing */
.price-card{position:relative;display:flex;flex-direction:column;min-height:100%}
.price-card.featured{border:2px solid rgba(21,87,255,.45);transform:translateY(-8px)}
.price-badge{position:absolute;top:18px;right:18px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;border-radius:999px;padding:.35rem .7rem;font-size:.78rem;font-weight:900}
.price{font-size:2rem;color:var(--primary);font-weight:900;margin:.25rem 0 1rem}.price small{font-size:.9rem;color:var(--muted)}
.price-card .btn{margin-top:auto}

/* Contact */
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:32px;align-items:start}
.contact-info{background:linear-gradient(155deg,var(--primary),#0d3d7c);color:#fff;border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow);position:sticky;top:106px;overflow:hidden}
.contact-info::after{content:"";position:absolute;right:-60px;bottom:-80px;width:220px;height:220px;border-radius:50%;background:rgba(24,210,255,.18)}
.contact-info h2{color:#fff}.contact-info p{color:rgba(255,255,255,.76)}
.contact-link{display:flex;align-items:center;gap:.75rem;padding:.85rem 0;color:#fff;font-weight:800;border-bottom:1px solid rgba(255,255,255,.16)}
.contact-form{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:1.6rem;box-shadow:var(--shadow-soft)}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-grid .full{grid-column:1/-1}
label{display:block;font-weight:800;color:var(--primary);font-size:.92rem;margin-bottom:.35rem}
input,select,textarea{
    width:100%;
    border:1px solid var(--border);
    background:#fff;
    color:var(--primary);
    border-radius:14px;
    padding:.88rem .95rem;
    font:inherit;
    outline:none;
    transition:border-color .2s ease, box-shadow .2s ease;
}
textarea{min-height:150px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:rgba(21,87,255,.6);box-shadow:0 0 0 4px rgba(21,87,255,.10)}
.form-feedback{margin-top:1rem;font-weight:800;border-radius:14px;padding:.85rem 1rem;display:none}
.form-feedback.success{display:block;background:#eafff1;color:#0b7434;border:1px solid #abe9c2}
.form-feedback.error{display:block;background:#fff2f2;color:#9a1c1c;border:1px solid #ffc9c9}
.honeypot{display:none!important}

/* CTA */
.cta-band{background:linear-gradient(135deg,var(--primary),var(--primary-2));border-radius:32px;padding:3rem;color:#fff;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2rem;overflow:hidden;position:relative}
.cta-band::before{content:"";position:absolute;inset:-120px -80px auto auto;width:280px;height:280px;background:rgba(24,210,255,.18);border-radius:50%;filter:blur(5px)}
.cta-band h2{color:#fff}.cta-band p{color:rgba(255,255,255,.75);max-width:760px}.cta-band>*{position:relative;z-index:1}

/* Portfolio */
.page-hero{padding:86px 0 58px;background:radial-gradient(circle at 80% 0, rgba(24,210,255,.18), transparent 34%), var(--light)}
.breadcrumb{display:flex;gap:.45rem;align-items:center;font-weight:800;color:var(--muted);margin-bottom:1rem}
.breadcrumb a{color:var(--blue)}
.filters{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:center;margin-bottom:2rem}.filter-chip{border:1px solid var(--border);background:#fff;border-radius:999px;padding:.7rem 1rem;font-weight:850;color:var(--primary);cursor:pointer}.filter-chip.active,.filter-chip:hover{border-color:rgba(21,87,255,.5);background:var(--cyan-soft);color:var(--blue)}

/* Footer */
.site-footer{background:#f9fbff;border-top:1px solid var(--border);padding:54px 0 24px}
.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:32px}.footer-logo{width:190px;background:#fff;border-radius:14px;margin-bottom:1rem}.site-footer h3{font-size:1rem}.site-footer a{display:block;color:var(--muted);font-weight:700;margin:.5rem 0}.site-footer a:hover{color:var(--blue)}
.footer-bottom{border-top:1px solid var(--border);margin-top:34px;padding-top:18px;display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.92rem;flex-wrap:wrap}

/* Light animations */
[data-animate]{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}
[data-animate].visible{opacity:1;transform:none}
.float-y{animation:floatY 5.8s ease-in-out infinite}.float-y.delay{animation-delay:1.25s}.float-y.delay-2{animation-delay:2.15s}
.pulse-glow{animation:pulseGlow 3.2s ease-in-out infinite}
.soft-rotate{animation:softRotate 12s linear infinite}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes pulseGlow{0%,100%{box-shadow:0 14px 26px rgba(21,87,255,.20)}50%{box-shadow:0 20px 45px rgba(24,210,255,.34)}}
@keyframes softRotate{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* Utility */
.text-center{text-align:center}.mt-2{margin-top:2rem}.mt-3{margin-top:3rem}.hidden-mobile{display:block}

@media (max-width:1024px){
    .hero-grid,.split-grid,.contact-grid{grid-template-columns:1fr}.hero-visual{min-height:390px}.contact-info{position:relative;top:0}.stats-strip{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.cta-band{grid-template-columns:1fr;text-align:left}.price-card.featured{transform:none}
}
@media (max-width:880px){
    .nav-toggle{display:block}.main-nav{position:fixed;top:82px;left:16px;right:16px;display:grid;gap:.25rem;background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow);padding:1rem;transform:translateY(-12px);opacity:0;pointer-events:none;transition:.2s ease}.main-nav.open{transform:none;opacity:1;pointer-events:auto}.main-nav a{padding:.6rem}.main-nav .btn{margin-top:.4rem}.hero{padding:70px 0 60px}.grid-3{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.section{padding:70px 0}
}
@media (max-width:620px){
    .container{width:min(calc(100% - 24px), var(--container))}.brand img{width:154px}.header-inner{min-height:72px}.main-nav{top:72px}.hero-points{display:grid}.stats-strip,.grid-3,.grid-4{grid-template-columns:1fr}.hero-visual{min-height:330px}.floating-card{font-size:.8rem}.float-1{left:0;top:5%}.float-2{right:0;bottom:12%}.float-3{left:5%;bottom:0}.section-heading{text-align:left}.contact-form{padding:1rem}.cta-band{padding:2rem;border-radius:24px}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:grid}.hidden-mobile{display:none!important}.hero-actions .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-animate]{opacity:1;transform:none}}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
@media (max-width:880px){.grid-2{grid-template-columns:1fr}}
