:root{
    --cp-blue-950:#071b49;
    --cp-blue-900:#0a2a70;
    --cp-blue-800:#0a46b9;
    --cp-blue-700:#0864e9;
    --cp-blue-600:#1f78ff;
    --cp-blue-100:#eaf3ff;
    --cp-ink:#07163d;
    --cp-muted:#62708b;
    --cp-line:#dfe8f5;
    --cp-white:#fff;
    --cp-shadow:0 22px 60px rgba(23,74,145,.14);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:Inter,Arial,sans-serif;
    color:var(--cp-ink);
    background:#fff;
    overflow-x:hidden;
}
a{text-decoration:none;color:inherit}
button{font:inherit}
.cp-container{width:min(1420px,calc(100% - 70px));margin:auto}

/* HEADER */
.cp-header{
    position:absolute;
    top:24px;
    left:0;
    right:0;
    z-index:20;
}
.cp-header__inner{
    width:min(1180px,calc(100% - 44px));
    min-height:94px;
    margin:auto;
    padding:14px 22px 14px 28px;
    display:flex;
    align-items:center;
    gap:30px;
    background:rgba(255,255,255,.95);
    border:1px solid rgba(224,233,245,.92);
    border-radius:34px;
    box-shadow:0 18px 45px rgba(23,72,139,.11);
    backdrop-filter:blur(14px);
}
.cp-header .cp-logo,
.cp-header .brand{
    flex:0 0 auto;
}
.cp-nav{
    margin-left:auto;
    display:flex;
    align-items:center;
    gap:31px;
    font-size:14px;
    font-weight:600;
    color:#263659;
}
.cp-nav>a{
    position:relative;
    white-space:nowrap;
}
.cp-nav>a:not(.cp-btn)::after{
    content:"";
    position:absolute;
    left:0;
    right:100%;
    bottom:-16px;
    height:3px;
    border-radius:5px;
    background:var(--cp-blue-700);
    transition:.25s;
}
.cp-nav>a:hover::after,
.cp-nav>a.is-active::after{right:0}
.cp-nav>a.is-active{color:var(--cp-blue-700)}
.cp-chevron{font-size:13px;margin-left:4px}
.cp-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:0;
    border-radius:13px;
    font-weight:700;
    transition:.22s;
}
.cp-btn:hover{transform:translateY(-2px)}
.cp-btn--header{
    min-height:50px;
    padding:0 24px;
    color:#fff;
    background:linear-gradient(135deg,#0952cf,#0872f8);
    box-shadow:0 13px 26px rgba(7,91,219,.22);
}
.cp-calendar{font-size:16px}
.cp-menu-toggle{display:none}

/* HERO */
.cp-hero{
    position:relative;
    min-height:1120px;
    padding:195px 0 120px;
    overflow:hidden;
    background:
        radial-gradient(circle at 78% 34%,rgba(74,159,255,.20),transparent 31%),
        radial-gradient(circle at 30% 16%,rgba(198,225,255,.24),transparent 28%),
        linear-gradient(180deg,#fbfdff 0%,#f7faff 65%,#fff 100%);
}
.cp-hero::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background-image:radial-gradient(rgba(45,126,235,.12) 1px,transparent 1px);
    background-size:26px 26px;
    mask-image:linear-gradient(to bottom,transparent 8%,#000 35%,transparent 83%);
    opacity:.4;
}
.cp-hero__glow{
    position:absolute;
    border-radius:50%;
    filter:blur(4px);
    pointer-events:none;
}
.cp-hero__glow--one{
    width:720px;height:720px;
    right:30px;top:180px;
    background:radial-gradient(circle,rgba(95,169,255,.25),rgba(95,169,255,0) 70%);
}
.cp-hero__glow--two{
    width:420px;height:420px;
    left:-150px;top:250px;
    background:radial-gradient(circle,rgba(173,213,255,.18),rgba(173,213,255,0) 72%);
}
.cp-hero__dots{
    position:absolute;
    right:30px;top:150px;
    width:145px;height:120px;
    opacity:.48;
    background-image:radial-gradient(#2f82ef 1.2px,transparent 1.2px);
    background-size:13px 13px;
}
.cp-hero__grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:41% 59%;
    gap:18px;
    align-items:start;
}
.cp-hero__content{
    padding:55px 10px 0 25px;
    max-width:595px;
}
.cp-eyebrow{
    width:max-content;
    display:flex;
    align-items:center;
    gap:10px;
    padding:9px 15px;
    border:1px solid #d9e8fa;
    border-radius:14px;
    background:rgba(255,255,255,.74);
    box-shadow:0 8px 20px rgba(44,109,191,.08);
    font-size:12px;
    font-weight:800;
    color:#0a63dc;
    letter-spacing:.2px;
}
.cp-eyebrow__dot{
    width:10px;height:10px;border-radius:50%;
    background:#0872f8;
    box-shadow:0 0 0 6px rgba(8,114,248,.09);
}
.cp-hero h1{
    margin:30px 0 22px;
    font-family:Manrope,Inter,Arial,sans-serif;
    font-size:clamp(58px,5vw,82px);
    line-height:.98;
    letter-spacing:-4.1px;
    font-weight:800;
    color:#07163d;
}
.cp-hero h1 span{color:#1168e8}
.cp-hero__lead{
    max-width:565px;
    margin:0;
    color:#5d6d89;
    font-size:17px;
    line-height:1.65;
}
.cp-hero__actions{
    display:flex;
    gap:18px;
    margin:35px 0 48px;
}
.cp-btn--primary{
    min-height:54px;
    padding:0 23px;
    background:linear-gradient(135deg,#0952cf,#0875fb);
    color:#fff;
    box-shadow:0 14px 28px rgba(7,94,223,.22);
}
.cp-btn--secondary{
    min-height:54px;
    padding:0 22px;
    background:#fff;
    color:#142341;
    border:1px solid #dce6f3;
    box-shadow:0 11px 24px rgba(32,70,120,.09);
}
.cp-play{
    width:21px;height:21px;
    display:grid;place-items:center;
    border:2px solid var(--cp-blue-700);
    border-radius:50%;
    color:var(--cp-blue-700);
    font-size:8px;
    padding-left:1px;
}
.cp-benefits{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}
.cp-benefit{
    display:flex;
    gap:11px;
    align-items:flex-start;
}
.cp-benefit__icon{
    width:25px;height:25px;
    display:grid;place-items:center;
    color:#0b6df0;
    font-size:22px;
    flex:0 0 auto;
}
.cp-benefit strong{
    display:block;
    font-size:12px;
    margin-bottom:5px;
    color:#17366c;
}
.cp-benefit small{
    display:block;
    font-size:10px;
    line-height:1.6;
    color:#6c7890;
}

/* DASHBOARD */
.cp-visual{
    position:relative;
    min-height:780px;
    padding-top:15px;
    perspective:1800px;
}
.cp-dashboard{
    width:790px;
    margin-left:-12px;
    display:grid;
    grid-template-columns:112px 1fr;
    background:rgba(255,255,255,.98);
    border:1px solid #e2e9f3;
    border-radius:26px;
    box-shadow:0 38px 85px rgba(32,88,164,.18);
    overflow:hidden;
    transform:rotate(-1.6deg);
    transform-origin:center;
}
.cp-dashboard__sidebar{
    padding:26px 13px;
    background:#fff;
    border-right:1px solid #e5ecf5;
}
.cp-dashboard__brand{
    display:flex;
    align-items:center;
    gap:6px;
    margin:0 5px 25px;
    font-size:13px;
}
.cp-mini-star{font-size:24px;color:#1269ea}
.cp-dashboard__menu{display:grid;gap:8px}
.cp-dashboard__menu a{
    display:flex;
    align-items:center;
    gap:9px;
    padding:9px 10px;
    border-radius:8px;
    color:#53627a;
    font-size:10px;
    font-weight:600;
}
.cp-dashboard__menu a span{
    width:15px;
    color:#1c67cf;
    text-align:center;
}
.cp-dashboard__menu a.is-active{
    color:#fff;
    background:linear-gradient(135deg,#0b347e,#0957d7);
    box-shadow:0 8px 18px rgba(9,70,175,.22);
}
.cp-dashboard__menu a.is-active span{color:#fff}
.cp-dashboard__main{
    padding:26px 24px 24px;
    background:#fbfcff;
}
.cp-dashboard__topbar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:19px;
}
.cp-dashboard__topbar h2{
    margin:0;
    font-family:Manrope,Inter,sans-serif;
    font-size:18px;
}
.cp-dashboard__tools{
    display:flex;
    align-items:center;
    gap:12px;
    color:#53617a;
    font-size:8px;
}
.cp-dashboard__tools button{
    border:0;background:transparent;color:#53617a;padding:2px;cursor:pointer;
}
.cp-admin{
    display:flex;
    align-items:center;
    gap:6px;
}
.cp-admin__avatar{
    width:25px;height:25px;
    display:grid;place-items:center;
    border-radius:50%;
    background:linear-gradient(135deg,#223c62,#91a7c2);
    color:#fff;
    font-size:8px;
}
.cp-admin strong,.cp-admin small{display:block}
.cp-admin strong{font-size:8px}
.cp-admin small{font-size:6px;color:#9aa5b5}
.cp-kpis{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px;
    margin-bottom:12px;
}
.cp-kpis article{
    position:relative;
    min-height:101px;
    padding:14px 12px 12px;
    background:#fff;
    border:1px solid #edf1f7;
    border-radius:12px;
    box-shadow:0 8px 16px rgba(36,81,137,.04);
}
.cp-kpis small,.cp-kpis strong,.cp-kpis em{display:block}
.cp-kpis small{
    margin:1px 0 7px 27px;
    color:#5e6d84;
    font-size:8px;
}
.cp-kpis strong{
    font-size:14px;
    letter-spacing:-.5px;
}
.cp-kpis em{
    margin-top:9px;
    color:#1ab868;
    font-size:7px;
    font-style:normal;
}
.cp-kpis em b{color:#9aa3b2;font-weight:500}
.cp-kpi-icon{
    position:absolute;
    top:12px;left:11px;
    width:20px;height:20px;
    display:grid;place-items:center;
    border-radius:7px;
    font-size:10px;
}
.cp-kpi-icon--blue{background:#e9f3ff;color:#126ff2}
.cp-kpi-icon--green{background:#e9fbef;color:#18b963}
.cp-kpi-icon--violet{background:#f1eaff;color:#8a56ef}
.cp-kpi-icon--orange{background:#fff0e4;color:#ff8733}
.cp-chart-grid{
    display:grid;
    grid-template-columns:1.56fr .76fr;
    gap:12px;
}
.cp-panel{
    min-height:270px;
    padding:15px;
    background:#fff;
    border:1px solid #e8eef6;
    border-radius:13px;
}
.cp-panel__head strong{font-size:10px}
.cp-line-chart{width:100%;height:225px;margin-top:2px}
.cp-grid-lines line{stroke:#e9eef5;stroke-width:1}
.cp-chart-area{fill:url(#cpAreaGradient)}
.cp-chart-line{
    fill:none;
    stroke:#1f78ff;
    stroke-width:3;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.cp-chart-points circle{
    fill:#fff;stroke:#1f78ff;stroke-width:3;
}
.cp-chart-labels text{
    fill:#8a96a8;
    font-size:10px;
}
.cp-chart-labels text.is-selected{
    fill:#fff;
    font-weight:700;
    paint-order:stroke fill;
    stroke:#0b68e8;
    stroke-width:16px;
    stroke-linejoin:round;
}
.cp-panel--donut{padding-bottom:12px}
.cp-donut-wrap{display:grid;place-items:center;margin:18px 0 14px}
.cp-donut{
    width:124px;height:124px;
    display:grid;place-items:center;
    border-radius:50%;
    background:conic-gradient(#0a59df 0 48%,#158ff1 48% 80%,#cfe4ff 80% 100%);
    position:relative;
}
.cp-donut::after{
    content:"";
    position:absolute;
    width:73px;height:73px;
    border-radius:50%;
    background:#fff;
}
.cp-donut>div{position:relative;z-index:1;text-align:center}
.cp-donut strong,.cp-donut small{display:block}
.cp-donut strong{font-size:13px}
.cp-donut small{font-size:7px;color:#8d98a8}
.cp-legend{display:grid;gap:9px}
.cp-legend span{
    display:grid;
    grid-template-columns:8px 1fr auto;
    align-items:center;
    gap:7px;
    font-size:8px;
    color:#536078;
}
.cp-legend i{width:7px;height:7px;border-radius:50%}
.cp-legend i.one{background:#0a59df}
.cp-legend i.two{background:#d0916b}
.cp-legend i.three{background:#c8dcfa}
.cp-legend b{font-weight:600;color:#68758c}

/* LOWER FLOATING CARDS */
.cp-dashboard-cards{
    position:absolute;
    left:-25px;
    top:545px;
    width:790px;
    display:grid;
    grid-template-columns:1.15fr .75fr .75fr .9fr;
    gap:12px;
    transform:rotate(2.2deg);
}
.cp-dashboard-cards article{
    min-height:255px;
    background:rgba(255,255,255,.98);
    border:1px solid #e1e9f4;
    border-radius:19px;
    box-shadow:0 22px 48px rgba(26,76,147,.14);
}
.cp-orion-card{padding:18px}
.cp-card-title{
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.cp-card-title strong{
    color:#1748a9;
    font-size:13px;
    font-style:italic;
}
.cp-card-title button{border:0;background:transparent;color:#8a96a8}
.cp-orion-result{
    display:flex;
    gap:10px;
    margin:27px 0 18px;
}
.cp-orion-face{
    width:31px;height:31px;
    flex:0 0 auto;
    display:grid;place-items:center;
    border-radius:50%;
    background:#061d55;
    color:#1eb5ff;
    font-size:10px;
    box-shadow:0 0 0 5px #dceeff;
}
.cp-orion-result small,.cp-orion-result strong{display:block}
.cp-orion-result>div>small{font-size:9px}
.cp-orion-result strong{font-size:10px;margin-top:3px}
.cp-orion-result strong em{color:#18bd5a;font-style:normal}
.cp-orion-result p{
    margin:14px 0 0;
    font-size:9px;
    line-height:1.5;
}
.cp-orion-result p span{
    display:inline-grid;place-items:center;
    width:18px;height:18px;
    margin-right:6px;
    border-radius:50%;
    background:#18bd5a;color:#fff;
}
.cp-orion-result p small{display:inline;color:#7e899a}
.cp-orion-input{
    height:36px;
    padding-left:12px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    border:1px solid #e6edf6;
    border-radius:10px;
    background:#fafcff;
    color:#a1abbb;
    font-size:8px;
}
.cp-orion-input button{
    width:34px;height:30px;
    margin-right:3px;
    border:0;border-radius:8px;
    background:#0c63dc;color:#fff;
}
.cp-stat-card{padding:24px 20px}
.cp-stat-icon{
    width:45px;height:45px;
    display:grid;place-items:center;
    border-radius:50%;
    background:#eaf5ff;
    color:#1181ef;
    font-size:20px;
}
.cp-stat-icon--violet{background:#f1ebff;color:#7950ea}
.cp-stat-card strong{
    display:block;
    margin:22px 0 26px;
    font-size:12px;
}
.cp-stat-card b{
    display:block;
    font-family:Manrope,Inter,sans-serif;
    font-size:28px;
}
.cp-stat-card small{
    display:block;
    margin-top:7px;
    color:#758198;
    font-size:8px;
}
.cp-stat-card svg{width:100%;margin-top:25px}
.cp-stat-card svg path{
    fill:none;
    stroke:#126cf0;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.cp-stat-card:nth-child(2) svg path{stroke:#17ba58}
.cp-stat-card:nth-child(4) svg path{stroke:#774bea}

.cp-scroll-link{
    position:absolute;
    left:50%;
    bottom:25px;
    z-index:4;
    transform:translateX(-50%);
    display:grid;
    place-items:center;
    gap:12px;
    color:#0c62dc;
    font-size:15px;
}
.cp-scroll-link span{
    width:46px;height:46px;
    display:grid;place-items:center;
    border-radius:50%;
    background:#fff;
    box-shadow:0 12px 28px rgba(33,83,147,.12);
    font-size:25px;
}

/* RESPONSIVE */
@media (max-width:1250px){
    .cp-header__inner{width:calc(100% - 32px)}
    .cp-nav{gap:18px}
    .cp-hero__grid{grid-template-columns:40% 60%}
    .cp-dashboard{width:720px}
    .cp-dashboard-cards{width:720px}
    .cp-hero h1{font-size:66px}
}
@media (max-width:1050px){
    .cp-header{top:12px}
    .cp-header__inner{min-height:72px;border-radius:24px}
    .cp-menu-toggle{
        display:grid;
        gap:4px;
        margin-left:auto;
        border:0;background:transparent;
    }
    .cp-menu-toggle span{width:25px;height:2px;background:#18365f}
    .cp-nav{display:none}
    .cp-hero{padding-top:130px;min-height:auto}
    .cp-hero__grid{grid-template-columns:1fr}
    .cp-hero__content{max-width:680px;padding-left:0}
    .cp-visual{margin-top:30px;transform:scale(.92);transform-origin:top left}
    .cp-scroll-link{display:none}
}
@media (max-width:760px){
    .cp-container{width:min(100% - 28px,620px)}
    .cp-hero{padding:115px 0 70px}
    .cp-hero h1{font-size:52px;letter-spacing:-2.7px}
    .cp-hero__actions{flex-direction:column;align-items:stretch}
    .cp-benefits{grid-template-columns:1fr}
    .cp-visual{
        width:790px;
        transform:scale(.58);
        margin-bottom:-300px;
    }
}

/* ======================================================
   CTA - AJUSTES FINALES
====================================================== */

.cp-cta .cp-section-kicker{
    color:#fff;
    font-size:13px;
    font-weight:800;
    letter-spacing:2.5px;
    opacity:.95;
}

.cp-btn--light{
    transition:
        transform .25s ease,
        box-shadow .25s ease,
        background-color .25s ease;
}

.cp-btn--light:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 35px rgba(0,0,0,.18);
}

.cp-btn--light span{
    display:inline-block;
    transition:transform .25s ease;
}

.cp-btn--light:hover span{
    transform:translateX(5px);
}

@media(max-width:1050px){
    .cp-ecosystem-grid{
        grid-template-columns:1fr 1fr;
        grid-template-rows:auto;
    }

    .cp-eco-card--management{
        grid-column:1 / -1;
        grid-row:auto;
        min-height:430px;
    }

    .cp-eco-card--orion{
        grid-column:1 / -1;
    }

    .cp-eco-card--infra,
    .cp-eco-card--support{
        grid-column:auto;
    }
}

@media(max-width:700px){
    .cp-ecosystem-grid{
        grid-template-columns:1fr;
    }

    .cp-eco-card,
    .cp-eco-card--management,
    .cp-eco-card--orion,
    .cp-eco-card--infra,
    .cp-eco-card--support{
        grid-column:auto;
        min-height:300px;
        padding:28px;
    }

    .cp-eco-card--management{
        min-height:390px;
    }

    .cp-eco-card--management h3{
        font-size:33px;
    }

    .cp-ecosystem-more{
        justify-content:flex-start;
    }
}

/* ======================================================
   ECOSISTEMA CANOPUS + MINI CARRUSEL
====================================================== */

.cp-ecosystem{
    position:relative;
    overflow:hidden;
    padding:110px 0;
    background:
        radial-gradient(circle at 12% 18%,rgba(31,120,255,.08),transparent 30%),
        radial-gradient(circle at 88% 72%,rgba(112,80,255,.07),transparent 28%),
        #fff;
}

.cp-ecosystem .cp-container{
    position:relative;
    z-index:2;
}

.cp-section-head{
    max-width:800px;
    margin:0 auto 55px;
    text-align:center;
}

.cp-section-kicker{
    display:block;
    margin-bottom:16px;
    color:#1268e8;
    font-size:12px;
    font-weight:800;
    letter-spacing:2px;
}

.cp-section-head h2{
    margin:0 0 18px;
    color:#07163d;
    font-family:Manrope,Inter,Arial,sans-serif;
    font-size:clamp(38px,4vw,58px);
    line-height:1.08;
    letter-spacing:-2px;
}

.cp-section-head h2 span{
    color:#1268e8;
}

.cp-section-head p{
    margin:0 auto;
    max-width:690px;
    color:#62708b;
    font-size:17px;
    line-height:1.7;
}

.cp-ecosystem-grid{
    display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));
    gap:22px;
}

.cp-eco-card{
    position:relative;
    overflow:hidden;
    padding:32px;
    border:1px solid #e1e9f4;
    border-radius:28px;
    background:#fff;
    box-shadow:0 18px 45px rgba(31,79,145,.08);
}

.cp-eco-card--management{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:minmax(0,.85fr) minmax(500px,1.15fr);
    align-items:center;
    gap:34px;
    min-height:auto;
    padding:34px 40px;
    background:
        radial-gradient(circle at 82% 22%,rgba(31,120,255,.12),transparent 35%),
        linear-gradient(145deg,#f8fbff,#fff);
}

.cp-eco-card--orion{
    grid-column:span 5;
}

.cp-eco-card--infra{
    grid-column:span 3;
}

.cp-eco-card--support{
    grid-column:span 4;
}

.cp-eco-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
}

.cp-eco-icon{
    width:62px;
    height:62px;
    display:grid;
    place-items:center;
    border-radius:19px;
    background:#edf4ff;
    color:#1068e8;
}

.cp-eco-icon svg{
    width:30px;
    height:30px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.cp-eco-number{
    color:#c5d3e5;
    font-size:14px;
    font-weight:800;
}

.cp-eco-card small{
    display:block;
    margin-top:26px;
    color:#70809b;
    font-size:11px;
    font-weight:800;
    letter-spacing:1.4px;
    text-transform:uppercase;
}

.cp-eco-card h3{
    margin:12px 0 14px;
    color:#07163d;
    font-family:Manrope,Inter,Arial,sans-serif;
    font-size:29px;
    line-height:1.1;
    letter-spacing:-1px;
}

.cp-eco-card--management h3{
    font-size:40px;
}

.cp-eco-card p{
    margin:0;
    color:#67758d;
    font-size:15px;
    line-height:1.65;
}

.cp-tags{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:28px;
}

.cp-tags span{
    padding:9px 12px;
    border:1px solid #dce8f7;
    border-radius:999px;
    background:#fff;
    color:#426084;
    font-size:12px;
    font-weight:700;
}

.cp-eco-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:25px;
    color:#1268e8;
    font-weight:800;
}

/* ==========================
   MINI CARRUSEL
========================== */

.cp-product-demo{
    position:relative;
    width:100%;
    min-width:0;
}

.cp-product-demo__glow{
    position:absolute;
    inset:10% -6% -10% 4%;
    border-radius:50%;
    background:
        radial-gradient(circle,
        rgba(24,103,255,.22),
        rgba(106,73,255,.10) 42%,
        transparent 72%);
    filter:blur(28px);
    pointer-events:none;
}

.cp-product-window{
    position:relative;
    z-index:2;
    width:100%;
    max-width:720px;
    margin-left:auto;
    overflow:hidden;
    border:1px solid rgba(173,198,235,.72);
    border-radius:22px;
    background:#fff;
    box-shadow:
        0 30px 70px rgba(24,72,142,.18),
        0 8px 24px rgba(20,70,140,.10);
}

.cp-product-window__bar{
    height:47px;
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    padding:0 16px;
    border-bottom:1px solid #e5edf8;
    background:linear-gradient(180deg,#fff,#f7faff);
    color:#36506f;
    font-size:11px;
}

.cp-product-window__bar strong{
    color:#153f7a;
    font-size:11px;
    font-weight:800;
}

.cp-product-window__dots{
    display:flex;
    gap:6px;
}

.cp-product-window__dots span{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#c6d4e8;
}

.cp-product-window__dots span:first-child{
    background:#ff7c78;
}

.cp-product-window__dots span:nth-child(2){
    background:#ffc75f;
}

.cp-product-window__dots span:nth-child(3){
    background:#61d29b;
}

.cp-product-window__status{
    justify-self:end;
    display:flex;
    align-items:center;
    gap:6px;
    color:#60738e;
}

.cp-product-window__status i{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#26ba7b;
}

.cp-product-slides{
    position:relative;
    width:100%;
    height:360px;
    overflow:hidden;
    background:#ffffff;
}

.cp-product-slide{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    margin:0;
    opacity:0;
    visibility:hidden;
    transform:scale(1.025);
    transition:
        opacity .65s ease,
        visibility .65s ease,
        transform 1s ease;
}

.cp-product-slide.is-active{
    opacity:1;
    visibility:visible;
    transform:scale(1);
}

.cp-product-slide img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center center;
    background:#ffffff;
}

.cp-product-caption{
    position:absolute;
    left:16px;
    right:16px;
    bottom:15px;
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:12px 14px;
    border-radius:14px;
    background:rgba(7,29,65,.82);
    color:#fff;
    backdrop-filter:blur(12px);
}

.cp-product-caption__eyebrow{
    color:#9fc5ff;
    font-size:9px;
    font-weight:800;
    letter-spacing:1.1px;
}

.cp-product-caption strong{
    font-size:13px;
}

.cp-product-controls{
    position:relative;
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:15px;
    margin-top:18px;
}

.cp-product-arrow{
    width:35px;
    height:35px;
    display:grid;
    place-items:center;
    border:1px solid #d8e4f5;
    border-radius:50%;
    background:#fff;
    color:#1268e8;
    cursor:pointer;
}

.cp-product-dots{
    display:flex;
    gap:7px;
}

.cp-product-dots button{
    width:7px;
    height:7px;
    padding:0;
    border:0;
    border-radius:999px;
    background:#c6d5e9;
    cursor:pointer;
    transition:.25s ease;
}

.cp-product-dots button.is-active{
    width:25px;
    background:#1769e8;
}

/* ==========================
   RESPONSIVE
========================== */

@media(max-width:1100px){

    .cp-eco-card--management{
        grid-template-columns:1fr;
    }

    .cp-eco-card--orion,
    .cp-eco-card--infra,
    .cp-eco-card--support{
        grid-column:1 / -1;
    }

    .cp-product-demo{
        max-width:850px;
        margin:0 auto;
    }

    .cp-product-window{
        max-width:850px;
        margin:0 auto;
    }
}

@media(max-width:700px){

    .cp-ecosystem{
        padding:75px 0;
    }

    .cp-eco-card,
    .cp-eco-card--management{
        padding:26px;
    }

    .cp-eco-card--management h3{
        font-size:32px;
    }

    .cp-product-slides{
        height:260px;
    }

    .cp-product-window__bar{
        grid-template-columns:1fr auto;
    }

    .cp-product-window__bar strong{
        display:none;
    }

    .cp-product-caption__eyebrow{
        display:none;
    }
}

/* ======================================================
   AJUSTES FINALES DEL ECOSISTEMA
====================================================== */

.cp-eco-management-copy{
    min-width:0;
    padding:6px 0;
}

@media(max-width:700px){
    .cp-product-window{
        width:100%;
        max-width:100%;
        margin:0 auto;
    }

    .cp-product-slide img{
        object-fit:contain;
        object-position:center;
    }
}
