/* =========================================================
   BIZNIS MARKET - BRANDING I GRAFIČKI DIZAJN
   ========================================================= */

.bm-brand-page{
    --brand-dark:#0d171d;
    --brand-blue:#12aee8;
    --brand-blue-dark:#078fc3;
    --brand-text:#15191c;
    --brand-muted:#68737b;
    --brand-line:#e3e9ed;
    --brand-soft:#f4f8fa;

    width:100%;
    color:var(--brand-text);
    overflow:visible;
}

.bm-brand-page,
.bm-brand-page *,
.bm-brand-page *::before,
.bm-brand-page *::after{
    box-sizing:border-box !important;
}

.bm-brand-inner{
    width:min(1500px,94vw);
    max-width:1500px;
    margin:0 auto;
    padding-left:28px;
    padding-right:28px;
}

.bm-brand-page h2{
    margin:0;
    color:var(--brand-text);
    font-size:clamp(32px,3vw,46px);
    line-height:1.08;
    letter-spacing:-1.3px;
    font-weight:800;
}

.bm-brand-page h3{
    margin:0;
    color:var(--brand-text);
    font-size:20px;
    line-height:1.25;
    font-weight:700;
}

.bm-brand-page p{
    margin:0;
    color:var(--brand-muted);
    font-size:16px;
    line-height:1.72;
}

.bm-brand-kicker{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:14px;
    color:var(--brand-blue);
    font-size:11px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:1.5px;
    text-transform:uppercase;
}

.bm-brand-kicker::before{
    content:"";
    width:26px;
    height:2px;
    border-radius:10px;
    background:currentColor;
}

.bm-brand-lead{
    max-width:1100px;
    font-size:17px !important;
    line-height:1.76 !important;
}


/* INTRO */

.bm-brand-intro{
    padding:62px 0 74px;
}

.bm-brand-intro-grid{
    display:grid;
    grid-template-columns:minmax(0,1.42fr) minmax(330px,.58fr);
    gap:68px;
    align-items:start;
}

.bm-brand-intro-copy h2{
    max-width:950px;
    margin-bottom:22px;
}

.bm-brand-intro-copy p{
    max-width:980px;
    margin-bottom:17px;
}

.bm-brand-intro-copy p:last-child{
    margin-bottom:0;
}

.bm-brand-intro-copy strong{
    color:var(--brand-text);
}

.bm-brand-pill-list{
    display:grid;
    gap:10px;
}

.bm-brand-pill{
    position:relative;
    padding:21px 20px 21px 65px;
    border:1px solid var(--brand-line);
    border-radius:14px;
    background:var(--brand-soft);
}

.bm-brand-pill-num{
    position:absolute;
    left:19px;
    top:20px;

    display:flex;
    align-items:center;
    justify-content:center;

    width:29px;
    height:29px;

    border-radius:8px;
    background:var(--brand-dark);
    color:#fff;

    font-size:10px;
    font-weight:800;
}

.bm-brand-pill h3{
    margin-bottom:6px;
    font-size:17px;
}

.bm-brand-pill p{
    font-size:13px;
    line-height:1.55;
}


/* FULL WIDTH BACKGROUNDS */

.bm-brand-dark,
.bm-brand-system,
.bm-brand-process,
.bm-brand-digital{
    position:relative;
    width:auto;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
}


/* DARK */

.bm-brand-dark{
    padding:76px 0;

    background:
        radial-gradient(circle at 88% 12%,rgba(18,174,232,.23),transparent 28%),
        linear-gradient(135deg,#0b141a,#122731);

    color:#fff;
}

.bm-brand-dark .bm-brand-kicker{
    color:#4ccafa;
}

.bm-brand-dark h2{
    max-width:1180px;
    color:#fff;
}

.bm-brand-dark > .bm-brand-inner > p{
    max-width:1240px;
    margin-top:20px;
    color:rgba(255,255,255,.72);
    font-size:17px;
}

.bm-brand-dark-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    margin-top:42px;
}

.bm-brand-dark-card{
    min-height:205px;
    padding:28px;

    border:1px solid rgba(255,255,255,.12);
    border-radius:17px;

    background:rgba(255,255,255,.055);
}

.bm-brand-dark-card > span{
    display:block;
    margin-bottom:20px;
    color:#51cffb;
    font-size:11px;
    font-weight:800;
}

.bm-brand-dark-card h3{
    margin-bottom:10px;
    color:#fff;
}

.bm-brand-dark-card p{
    color:rgba(255,255,255,.67);
    font-size:14px;
}


/* SERVICES */

.bm-brand-services{
    padding:78px 0;
    background:#fff;
}

.bm-brand-section-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(500px,.82fr);
    gap:70px;
    align-items:end;
    margin-bottom:40px;
}

.bm-brand-section-head > p{
    max-width:760px;
    justify-self:end;
    font-size:17px;
}

.bm-brand-service-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}

.bm-brand-service-card{
    min-height:270px;
    padding:28px;

    border:1px solid var(--brand-line);
    border-radius:16px;

    background:#fff;

    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.bm-brand-service-card:hover{
    transform:translateY(-4px);
    border-color:rgba(18,174,232,.32);
    box-shadow:0 16px 38px rgba(13,25,33,.07);
}

.bm-brand-service-icon{
    display:flex;
    align-items:center;
    justify-content:center;

    width:44px;
    height:44px;

    margin-bottom:24px;

    border-radius:11px;
    background:#e9f7fc;
    color:var(--brand-blue-dark);

    font-size:0;
}

.bm-brand-service-icon::before{
    content:"";
    display:block;

    width:23px;
    height:23px;

    background:currentColor;

    -webkit-mask-position:center;
    mask-position:center;
    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;
    -webkit-mask-size:23px 23px;
    mask-size:23px 23px;
}

.bm-brand-service-card h3{
    margin-bottom:10px;
}

.bm-brand-service-card p{
    font-size:14px;
    line-height:1.65;
}


/* ICONS */

.icon-identity::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Cpath d='M8 12h8M12 8v8'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Cpath d='M8 12h8M12 8v8'/%3E%3C/svg%3E");
}

.icon-logo::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3 20 8v8l-8 5-8-5V8l8-5Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M12 3 20 8v8l-8 5-8-5V8l8-5Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");
}

.icon-guidelines::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='2'/%3E%3Cpath d='M8 8h8M8 12h8M8 16h5'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='2'/%3E%3Cpath d='M8 8h8M8 12h8M8 16h5'/%3E%3C/svg%3E");
}

.icon-social::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='4' y='4' width='16' height='16' rx='3'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Ccircle cx='17' cy='7' r='1'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Crect x='4' y='4' width='16' height='16' rx='3'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Ccircle cx='17' cy='7' r='1'/%3E%3C/svg%3E");
}

.icon-print::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M7 8V3h10v5M7 17H5a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2'/%3E%3Crect x='7' y='14' width='10' height='7'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M7 8V3h10v5M7 17H5a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2'/%3E%3Crect x='7' y='14' width='10' height='7'/%3E%3C/svg%3E");
}

.icon-campaign::before{
    -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M3 11v2a2 2 0 0 0 2 2h2l2 5h3l-2-5 9-4V7L7 11H5a2 2 0 0 0-2 2'/%3E%3C/svg%3E");
    mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2'%3E%3Cpath d='M3 11v2a2 2 0 0 0 2 2h2l2 5h3l-2-5 9-4V7L7 11H5a2 2 0 0 0-2 2'/%3E%3C/svg%3E");
}


/* SYSTEM */

.bm-brand-system{
    padding:74px 0;
    background:var(--brand-soft);
}

.bm-brand-system-grid{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);
    gap:74px;
    align-items:center;
}

.bm-brand-system-grid h2{
    max-width:900px;
    margin-bottom:20px;
}

.bm-brand-system-list{
    display:grid;
}

.bm-brand-system-item{
    padding:17px 0;
    border-bottom:1px solid #dce4e8;
}

.bm-brand-system-item:last-child{
    border-bottom:0;
}

.bm-brand-system-item strong{
    display:block;
    margin-bottom:4px;
    color:var(--brand-text);
    font-size:16px;
}

.bm-brand-system-item p{
    font-size:13px;
}


/* MARKET */

.bm-brand-market{
    padding:72px 0;
    background:#fff;
}

.bm-brand-market-box{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
    gap:50px;
    align-items:end;

    padding:46px;

    border-radius:19px;

    background:
        radial-gradient(circle at 90% 0%,rgba(18,174,232,.24),transparent 31%),
        var(--brand-dark);

    color:#fff;
}

.bm-brand-market-box .bm-brand-kicker{
    color:#4ccafa;
}

.bm-brand-market-box h2{
    max-width:900px;
    margin-bottom:17px;
    color:#fff;
}

.bm-brand-market-box p{
    max-width:950px;
    color:rgba(255,255,255,.70);
}

.bm-brand-market-side{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
}

.bm-brand-market-side > span{
    margin-bottom:12px;
    color:rgba(255,255,255,.52);
    font-size:11px;
    font-weight:700;
    letter-spacing:1px;
    text-transform:uppercase;
}

.bm-brand-market-side a{
    display:inline-flex;
    align-items:center;

    min-height:46px;
    padding:12px 18px;

    border-radius:8px;

    background:var(--brand-blue);
    color:#fff;

    text-decoration:none;
    font-size:13px;
    font-weight:700;
}


/* PROCESS */

.bm-brand-process{
    padding:76px 0;

    background:
        radial-gradient(circle at 15% 100%,rgba(18,174,232,.12),transparent 30%),
        var(--brand-dark);
}

.bm-brand-process .bm-brand-kicker{
    color:#4ccafa;
}

.bm-brand-process h2{
    color:#fff;
}

.bm-brand-process > .bm-brand-inner > p{
    max-width:950px;
    margin-top:18px;
    color:rgba(255,255,255,.68);
}

.bm-brand-process-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:0;

    margin-top:42px;

    border-top:1px solid rgba(255,255,255,.13);
}

.bm-brand-step{
    padding:28px 24px 0 0;
}

.bm-brand-step + .bm-brand-step{
    padding-left:20px;
}

.bm-brand-step > span{
    display:block;
    margin-bottom:16px;
    color:#4ccafa;
    font-size:11px;
    font-weight:800;
}

.bm-brand-step h3{
    margin-bottom:9px;
    color:#fff;
    font-size:17px;
}

.bm-brand-step p{
    color:rgba(255,255,255,.62);
    font-size:13px;
    line-height:1.6;
}


/* DIGITAL */

.bm-brand-digital{
    padding:74px 0;
    background:var(--brand-soft);
}

.bm-brand-digital-grid{
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);
    gap:72px;
    align-items:center;
}

.bm-brand-digital-grid h2{
    max-width:900px;
    margin-bottom:20px;
}

.bm-brand-digital-card{
    padding:30px;

    border:1px solid var(--brand-line);
    border-radius:17px;

    background:#fff;
}

.bm-brand-digital-card strong{
    display:block;
    margin-bottom:9px;
    color:var(--brand-text);
    font-size:19px;
}

.bm-brand-digital-card p{
    margin-bottom:16px;
    font-size:14px;
}

.bm-brand-digital-card a{
    color:var(--brand-blue-dark);
    text-decoration:none;
    font-size:14px;
    font-weight:700;
}


/* FAQ */

.bm-brand-faq{
    padding:70px 0 54px;
    background:#fff;
}

.bm-brand-faq h2{
    max-width:1100px;
    margin-bottom:10px;
}

.bm-brand-faq-intro{
    max-width:1100px;
    font-size:17px !important;
}

.bm-brand-page .bm-service-faq-list{
    display:grid;
    gap:11px;
    margin-top:34px;
}

.bm-brand-page .bm-service-faq-item{
    overflow:hidden;
    border:1px solid var(--brand-line);
    border-radius:14px;
    background:#fff;
    box-shadow:0 7px 22px rgba(13,25,33,.035);
}

.bm-brand-page .bm-service-faq-question{
    position:relative;
    display:flex;
    align-items:center;

    min-height:69px;
    padding:18px 68px 18px 24px;

    color:var(--brand-text);

    font-size:16px;
    line-height:1.4;
    font-weight:700;

    cursor:pointer;
}

.bm-brand-page .bm-service-faq-question:hover{
    background:#f8fbfc;
}

.bm-brand-page .bm-service-faq-item.is-open .bm-service-faq-question{
    color:#087fa9;
    background:#f5fafc;
}

.bm-brand-page .bm-service-faq-icon{
    position:absolute;
    right:21px;
    top:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    width:34px;
    height:34px;

    transform:translateY(-50%);

    border-radius:50%;
    background:#eaf8fd;
    color:var(--brand-blue-dark);

    font-size:21px;
}

.bm-brand-page .bm-service-faq-item.is-open .bm-service-faq-icon{
    background:var(--brand-blue);
    color:#fff;
}

.bm-brand-page .bm-service-faq-answer{
    display:none;
    padding:0 24px 22px;
    background:#f5fafc;
}

.bm-brand-page .bm-service-faq-item.is-open .bm-service-faq-answer{
    display:block;
}

.bm-brand-page .bm-service-faq-answer p{
    max-width:1200px;
    padding-top:18px;
    border-top:1px solid rgba(18,174,232,.13);
    font-size:15px;
}


/* FINAL */

.bm-brand-final{
    padding:0 0 12px;
}

.bm-brand-final-box{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:30px;
    align-items:center;

    padding:42px 46px;

    border-radius:18px;

    background:
        radial-gradient(circle at 90% 15%,rgba(18,174,232,.20),transparent 31%),
        var(--brand-dark);
}

.bm-brand-final-box h2{
    max-width:1050px;
    margin-bottom:9px;
    color:#fff;
    font-size:34px;
}

.bm-brand-final-box p{
    max-width:970px;
    color:rgba(255,255,255,.68);
    font-size:15px;
}

.bm-brand-final-box > a{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-height:48px;
    padding:13px 21px;

    border-radius:9px;

    background:var(--brand-blue);
    color:#fff;

    text-decoration:none;

    font-size:14px;
    font-weight:700;
    white-space:nowrap;
}


/* OVERFLOW */

html,
body{
    max-width:100%;
    overflow-x:hidden;
}

@supports (overflow:clip){
    html,
    body{
        overflow-x:clip;
    }
}


/* RESPONSIVE */

@media(max-width:1100px){

    .bm-brand-service-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media(max-width:991px){

    .bm-brand-intro-grid,
    .bm-brand-section-head,
    .bm-brand-system-grid,
    .bm-brand-market-box,
    .bm-brand-digital-grid{
        grid-template-columns:1fr;
    }

    .bm-brand-dark-grid{
        grid-template-columns:1fr;
    }

    .bm-brand-process-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .bm-brand-section-head > p{
        justify-self:start;
        max-width:900px;
    }

    .bm-brand-final-box{
        grid-template-columns:1fr;
    }

}

@media(max-width:700px){

    .bm-brand-inner{
        width:min(100%,94vw);
        padding-left:10px;
        padding-right:10px;
    }

    .bm-brand-intro,
    .bm-brand-dark,
    .bm-brand-services,
    .bm-brand-system,
    .bm-brand-market,
    .bm-brand-process,
    .bm-brand-digital,
    .bm-brand-faq{
        padding-top:50px;
        padding-bottom:50px;
    }

    .bm-brand-service-grid,
    .bm-brand-process-grid{
        grid-template-columns:1fr;
    }

    .bm-brand-step,
    .bm-brand-step + .bm-brand-step{
        padding:21px 0;
        border-bottom:1px solid rgba(255,255,255,.12);
    }

    .bm-brand-market-box,
    .bm-brand-final-box{
        padding:29px 24px;
    }

    .bm-brand-market-side a,
    .bm-brand-final-box > a{
        width:100%;
    }

    .bm-brand-page .bm-service-faq-question{
        min-height:64px;
        padding:16px 57px 16px 17px;
        font-size:15px;
    }

    .bm-brand-page .bm-service-faq-icon{
        right:15px;
        width:30px;
        height:30px;
    }

    .bm-brand-page .bm-service-faq-answer{
        padding:0 17px 18px;
    }

}