
/* BLUEZONE_HOME_AI_FLOW_V1 */

.bzflow{
    position:relative;
    overflow:hidden;
    padding:105px 0;
    background:
        radial-gradient(circle at 8% 15%,rgba(79,70,229,.08),transparent 27%),
        radial-gradient(circle at 92% 85%,rgba(147,51,234,.07),transparent 28%),
        #f8fafc;
}

.bzflow-inner{
    width:min(1180px,calc(100% - 36px));
    margin:auto;
}

.bzflow-head{
    max-width:760px;
    margin:0 auto 55px;
    text-align:center;
}

.bzflow-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 14px;
    margin-bottom:18px;
    border-radius:999px;
    background:#eef2ff;
    border:1px solid #dde3ff;
    color:#5c55df;
    font-size:12px;
    font-weight:700;
}

.bzflow-kicker i{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#7161ff;
}

.bzflow-head h2{
    margin:0;
    color:#111827;
    font-size:clamp(31px,3.5vw,48px);
    line-height:1.28;
    font-weight:700;
    letter-spacing:-1.2px;
}

.bzflow-head h2 span{
    background:linear-gradient(90deg,#3478f6,#7257f6,#a84cf2);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}

.bzflow-head p{
    max-width:680px;
    margin:17px auto 0;
    color:#667085;
    font-size:15px;
    line-height:1.95;
}

.bzflow-grid{
    display:grid;
    grid-template-columns:.92fr 1.08fr;
    gap:24px;
}


/* AI CARD */

.bzflow-agent{
    position:relative;
    min-height:570px;
    padding:32px;
    overflow:hidden;
    border-radius:28px;
    color:#fff;
    background:
        radial-gradient(circle at 15% 0%,rgba(104,87,255,.30),transparent 35%),
        linear-gradient(150deg,#071426,#091831 58%,#0b162c);
    box-shadow:0 28px 75px rgba(15,23,42,.14);
}

.bzflow-agent::after{
    content:"";
    position:absolute;
    width:250px;
    height:250px;
    left:-110px;
    bottom:-110px;
    border-radius:50%;
    background:#754dff;
    filter:blur(90px);
    opacity:.2;
}

.bzflow-agent-top{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}

.bzflow-agent-id{
    display:flex;
    align-items:center;
    gap:12px;
}

.bzflow-avatar{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border-radius:15px;
    background:linear-gradient(135deg,#3b82f6,#7c3aed);
    box-shadow:0 10px 30px rgba(90,83,255,.28);
    font-size:20px;
}

.bzflow-agent-id strong{
    display:block;
    font-size:14px;
}

.bzflow-agent-id small{
    display:block;
    margin-top:3px;
    color:#8fa0bc;
    font-size:10px;
}

.bzflow-status{
    display:flex;
    align-items:center;
    gap:6px;
    padding:7px 10px;
    border-radius:999px;
    border:1px solid rgba(16,185,129,.22);
    background:rgba(16,185,129,.09);
    color:#6ee7b7;
    font-size:9px;
    font-weight:700;
}

.bzflow-status i{
    width:6px;
    height:6px;
    border-radius:50%;
    background:#34d399;
}

.bzflow-agent-copy{
    position:relative;
    z-index:2;
    margin-top:42px;
}

.bzflow-agent-copy small{
    color:#7485a2;
    font-size:10px;
    font-weight:700;
}

.bzflow-agent-copy h3{
    max-width:400px;
    margin:10px 0 25px;
    font-size:28px;
    line-height:1.5;
    font-weight:650;
}

.bzflow-logs{
    position:relative;
    z-index:2;
    display:grid;
    gap:10px;
}

.bzflow-log{
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px 14px;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.07);
    background:rgba(255,255,255,.04);
}

.bzflow-log-num{
    flex:0 0 33px;
    width:33px;
    height:33px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:rgba(99,102,241,.13);
    color:#a5b4fc;
    font-size:10px;
    font-weight:700;
}

.bzflow-log strong{
    display:block;
    margin-bottom:2px;
    color:#e9eef8;
    font-size:11px;
}

.bzflow-log span{
    color:#7485a0;
    font-size:9px;
}

.bzflow-control{
    position:absolute;
    right:32px;
    left:32px;
    bottom:27px;
    z-index:2;
    color:#8190aa;
    font-size:10px;
}

.bzflow-control strong{
    color:#c1cada;
    font-weight:600;
}


/* JOURNEY */

.bzflow-steps{
    display:grid;
    gap:12px;
}

.bzflow-step{
    display:grid;
    grid-template-columns:50px 1fr auto;
    align-items:center;
    gap:16px;
    min-height:127px;
    padding:21px 23px;
    border-radius:21px;
    background:#fff;
    border:1px solid #e6e9f0;
    box-shadow:0 9px 30px rgba(15,23,42,.035);
    transition:.22s ease;
}

.bzflow-step:hover{
    transform:translateY(-3px);
    border-color:#d6d8ff;
    box-shadow:0 18px 42px rgba(15,23,42,.07);
}

.bzflow-step-num{
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    border-radius:15px;
    background:#f2f1ff;
    color:#6258e8;
    font-size:12px;
    font-weight:800;
}

.bzflow-step strong{
    display:block;
    margin-bottom:6px;
    color:#182033;
    font-size:15px;
}

.bzflow-step p{
    max-width:470px;
    margin:0;
    color:#718096;
    font-size:11px;
    line-height:1.8;
}

.bzflow-chip{
    padding:7px 10px;
    white-space:nowrap;
    border-radius:999px;
    background:#f0fdf4;
    color:#15803d;
    font-size:9px;
    font-weight:700;
}

.bzflow-bottom{
    margin-top:21px;
    text-align:center;
    color:#8993a5;
    font-size:11px;
}

.bzflow-bottom strong{
    color:#596275;
    font-weight:600;
}


@media(max-width:950px){

    .bzflow{
        padding:80px 0;
    }

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

@media(max-width:650px){

    .bzflow{
        padding:62px 0;
    }

    .bzflow-inner{
        width:min(100% - 24px,1180px);
    }

    .bzflow-head{
        margin-bottom:36px;
    }

    .bzflow-head h2{
        font-size:30px;
        letter-spacing:-.5px;
    }

    .bzflow-agent{
        min-height:520px;
        padding:23px;
        border-radius:22px;
    }

    .bzflow-agent-copy h3{
        font-size:23px;
    }

    .bzflow-control{
        right:23px;
        left:23px;
    }

    .bzflow-step{
        grid-template-columns:44px 1fr;
        min-height:unset;
        padding:17px;
    }

    .bzflow-step-num{
        width:44px;
        height:44px;
    }

    .bzflow-chip{
        grid-column:2;
        justify-self:start;
    }
}

