/*
==================================================
INDUSTRIES HERO
==================================================
*/
.industries-page .section-kicker{
    display:inline-flex;
    flex-direction:row;
    align-items:center;
    gap:12px;
    color:var(--gold);
    font-family:'Inter', sans-serif;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:.76rem;
    margin-bottom:16px;
}

.industries-page .section-kicker::before{
    content:"";
    display:block;
    flex:0 0 34px;
    width:34px;
    height:2px;
    background:var(--gold);
    border-radius:999px;
}

.industries-page .section-kicker::after{
    display:none;
    content:none;
}

.industries-hero{
    position:relative;
    overflow:hidden;
    padding:50px 0;
    background-color:#071a38 !important;
    background-image:
        linear-gradient(
            90deg,
            rgba(7,26,56,.98) 0%,
            rgba(7,26,56,.94) 35%,
            rgba(7,26,56,.82) 62%,
            rgba(7,26,56,.72) 100%
        ) !important;
    background-size:cover !important;
    background-position:center right !important;
    background-repeat:no-repeat !important;
}

.industries-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
    background-size:58px 58px;
    opacity:.38;
    pointer-events:none;
}

.industries-hero-grid{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0, 1.02fr) minmax(460px, .9fr);
    align-items:center;
    gap:46px;
}

.industries-hero-copy{
    max-width:760px;
}

.industries-page .industries-hero h1{
    color:#fff;
    max-width:760px;
    margin:0;
}

.industries-hero-copy .hero-lead{
    max-width:700px;
    margin-top:24px;
    color:var(--gold);
    font-size:1.04rem;
    font-weight:800;
    line-height:1.55;
}

.industries-hero-copy p:not(.hero-lead){
    max-width:700px;
    margin-top:14px;
    color:rgba(255,255,255,.86);
    font-size:1.04rem;
    line-height:1.75;
}

.industries-hero-actions{
    display:flex;
    align-items:center;
    gap:16px;
    flex-wrap:wrap;
    margin-top:34px;
}


/*
==================================================
INDUSTRIES HERO MOSAIC
==================================================
*/
.industries-hero-mosaic{
    display:grid;
    grid-template-columns:1.08fr .92fr;
    grid-template-rows:190px 190px;
    gap:10px;
    transform:skewX(-8deg);
    transform-origin:center;
}

.mosaic-card{
    position:relative;
    overflow:hidden;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.18);
    background:hsl(222, 75%, 7%);
    box-shadow:0 22px 60px rgba(0,0,0,.28);
}

.mosaic-card:first-child{
    grid-row:span 2;
}

.mosaic-card img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transform:skewX(8deg) scale(1.08);
    filter:saturate(.92) contrast(1.04);
}

.mosaic-card:first-child img{
    width:118%;
    max-width:none;
    transform:translateX(-9%) skewX(8deg) scale(1.08);
}

.mosaic-card::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            to bottom,
            rgba(7,26,56,.05),
            rgba(7,26,56,.34)
        );
}


/*
==================================================
INDUSTRIES INTRO
==================================================
*/
.industries-intro{
    padding:50px 0 0;
    background:#fff;
    border-bottom:1px solid rgba(11,31,77,.08);
}

.industries-intro p{
    max-width:870px;
    margin:0 auto;
    color:#263246;
    font-size:1rem;
    font-weight:600;
    line-height:1.75;
    text-align:center;
}


/*
==================================================
INDUSTRY EXPANSION
==================================================
*/
.industries-detail-section{
    padding:50px 0;
    background:#fff;
}

.industry-row{
    display:grid;
    grid-template-columns:minmax(220px, 300px) 1.15fr .75fr .75fr;
    align-items:center;
    gap:32px;
    padding:28px 0;
    border-bottom:1px solid rgba(11,31,77,.08);
}

.industry-row:first-child{
    border-top:1px solid rgba(11,31,77,.08);
}

.industry-row.image-right{
    grid-template-columns:1.15fr .75fr .75fr minmax(220px, 300px);
}

.industry-row.image-right .industry-image{
    grid-column:4;
}

.industry-row.image-right .industry-main{
    grid-column:1;
    grid-row:1;
}

.industry-row.image-right .industry-focus{
    grid-column:2;
    grid-row:1;
}

.industry-row.image-right .industry-fit{
    grid-column:3;
    grid-row:1;
}

.industry-image{
    width:100%;
    height:clamp(128px, 10vw, 150px);
    overflow:hidden;
    border-radius:6px;
    background:#f5f7fa;
    box-shadow:0 14px 34px rgba(11,31,77,.08);
}

.industry-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
    transition:transform .45s ease;
}

.industry-row:hover .industry-image img{
    transform:scale(1.06);
}

.industry-main{
    display:grid;
    grid-template-columns:68px 1fr;
    align-items:start;
    gap:22px;
}

.industry-number{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    color:var(--gold);
    font-family:'Montserrat', sans-serif;
    font-size:2.6rem;
    font-weight:800;
    line-height:1;
    letter-spacing:-.06em;
}

.industry-number::after{
    content:"";
    display:block;
    width:26px;
    height:2px;
    margin-top:12px;
    background:rgba(212,160,23,.75);
    border-radius:999px;
}

.industry-main h2{
    margin:0 0 10px;
    color:var(--primary);
    font-family:'Montserrat', sans-serif;
    font-size:1.35rem;
    font-weight:800;
    line-height:1.2;
    letter-spacing:-.03em;
}

.industry-main p{
    max-width:410px;
    color:#374151;
    font-size:.93rem;
    line-height:1.65;
}

.industry-focus,
.industry-fit{
    min-height:100px;
    padding-left:26px;
    border-left:1px solid rgba(11,31,77,.1);
}

.industry-focus h3,
.industry-fit h3{
    margin:0 0 10px;
    color:var(--gold);
    font-family:'Inter', sans-serif;
    font-size:.76rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.industry-focus ul,
.industry-fit ul{
    display:grid;
    gap:7px;
    padding:0;
    margin:0;
    list-style:none;
}

.industry-focus li,
.industry-fit li{
    position:relative;
    padding-left:13px;
    color:#374151;
    font-size:.84rem;
    line-height:1.35;
}

.industry-focus li::before,
.industry-fit li::before{
    content:"";
    position:absolute;
    left:0;
    top:.58em;
    width:4px;
    height:4px;
    border-radius:50%;
    background:var(--primary);
}


/*
==================================================
INDUSTRY CHALLENGES
==================================================
*/
.industry-challenges{
    position:relative;
    overflow:hidden;
    padding:50px 0;
    background:#071a38;
}

.industry-challenges::before{
    content:"";
    position:absolute;
    inset:0;
    background-image:radial-gradient(rgba(255,255,255,.14) 1px, transparent 1.8px);
    background-size:16px 16px;
    opacity:.12;
    pointer-events:none;
}

.industry-challenges .container{
    position:relative;
    z-index:2;
}

.challenge-heading{
    max-width:760px;
    margin:0 auto 36px;
    text-align:center;
}

.challenge-heading .section-kicker,
.why-industries-heading .section-kicker{
    justify-content:center;
}

.challenge-heading .section-kicker::before,
.why-industries-heading .section-kicker::before{
    display:none;
}

.challenge-heading h2{
    color:#fff;
}

.challenge-grid{
    display:grid;
    grid-template-columns:repeat(5, 1fr);
    gap:0;
}

.challenge-item{
    min-height:116px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:0 24px;
    border-right:1px solid rgba(255,255,255,.18);
}

.challenge-item:last-child{
    border-right:0;
}

.challenge-icon{
    display:grid;
    place-items:center;
    width:46px;
    height:46px;
    margin-bottom:12px;
    color:var(--gold);
}

.challenge-icon svg{
    width:42px;
    height:42px;
    display:block;
}

.challenge-icon svg *{
    fill:none;
    stroke:currentColor;
    stroke-width:2.4;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.challenge-item h3{
    max-width:150px;
    color:#fff;
    font-family:'Montserrat', sans-serif;
    font-size:.95rem;
    font-weight:800;
    line-height:1.25;
}


/*
==================================================
WHY LOGICFLOW
==================================================
*/
.why-logicflow-industries{
    padding:50px 0;
    background:#fff;
}

.why-industries-heading{
    max-width:760px;
    margin:0 auto 36px;
    text-align:center;
}

.why-industries-grid{
    display:grid;
    grid-template-columns:repeat(5, 1fr);
    gap:16px;
}

.why-card{
    min-height:220px;
    padding:26px 20px 28px;
    background:#fff;
    border:1px solid rgba(11,31,77,.06);
    border-radius:3px;
    text-align:center;
    box-shadow:0 14px 34px rgba(11,31,77,.08);
    transition:transform .25s ease, box-shadow .25s ease;
}

.why-card:hover{
    transform:translateY(-4px);
    box-shadow:0 20px 45px rgba(11,31,77,.12);
}

.why-icon{
    width:62px;
    height:62px;
    display:grid;
    place-items:center;
    margin:0 auto 18px;
    border-radius:50%;
    color:var(--gold);
    background:#f7f4ee;
    border:1px solid rgba(212,160,23,.22);
}

.why-icon svg{
    width:34px;
    height:34px;
    display:block;
}

.why-icon svg *{
    fill:none;
    stroke:currentColor;
    stroke-width:2.25;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.why-card h3{
    margin:0 0 10px;
    color:var(--primary);
    font-family:'Montserrat', sans-serif;
    font-size:1rem;
    font-weight:800;
    line-height:1.2;
}

.why-card p{
    color:#4b5563;
    font-size:.86rem;
    line-height:1.6;
}

/*
==================================================
INDUSTRIES CTA
==================================================
*/
.industries-cta{
    position:relative;
    overflow:hidden;
    padding:0;
    background:#071a38;
    border-top:1px solid rgba(212,160,23,.2);
    border-bottom: 1px solid rgba(255, 255, 255, .10);
}

.industries-cta::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 8% 50%, rgba(212,160,23,.12), transparent 26%),
        radial-gradient(circle at 88% 40%, rgba(212,160,23,.08), transparent 30%),
        radial-gradient(rgba(255,255,255,.13) 1px, transparent 1.8px);
    background-size:auto, auto, 16px 16px;
    opacity:.38;
    pointer-events:none;
}

.industries-cta-inner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:.9fr 1fr auto;
    align-items:center;
    gap:38px;
    padding:42px 0;
}

.industries-cta-heading{
    position:relative;
    padding-left:22px;
}

.industries-cta-heading::before{
    content:"";
    position:absolute;
    left:0;
    top:4px;
    width:3px;
    height:calc(100% - 8px);
    min-height:54px;
    background:var(--gold);
    border-radius:999px;
}

.industries-cta h2{
    max-width:480px;
    margin:0;
    color:#fff;
    font-family:'Montserrat', sans-serif;
    font-size:clamp(1.45rem, 2.2vw, 2.05rem);
    font-weight:800;
    line-height:1.16;
    letter-spacing:-.04em;
}

.industries-cta-copy{
    padding-left:34px;
    border-left:1px solid rgba(255,255,255,.18);
}

.industries-cta-copy p{
    max-width:520px;
    margin:0;
    color:rgba(255,255,255,.78);
    font-size:.98rem;
    line-height:1.7;
}

.industries-cta-action{
    justify-self:end;
}

.industries-cta .btn-primary{
    min-width:210px;
}

/*
==================================================
INDUSTRIES RESPONSIVE
==================================================
*/
@media(max-width:1120px){
    .industries-hero-grid{
        display:block;
    }

    .industries-hero-copy{
        max-width:100%;
    }

    .industries-hero-mosaic{
        display:none;
    }

    .industry-row,
    .industry-row.image-right{
        grid-template-columns:1fr 1fr;
        gap:26px;
    }

    .industry-row .industry-main,
    .industry-row.image-right .industry-main,
    .industry-row .industry-image,
    .industry-row.image-right .industry-image,
    .industry-row .industry-focus,
    .industry-row.image-right .industry-focus,
    .industry-row .industry-fit,
    .industry-row.image-right .industry-fit{
        grid-column:auto;
        grid-row:auto;
    }

    .industry-image{
        height:auto;
        aspect-ratio:16 / 9;
    }

    .industry-main{
        grid-template-columns:58px 1fr;
        gap:18px;
    }

    .industry-focus,
    .industry-fit{
        min-height:auto;
        padding-left:18px;
    }

    .challenge-grid,
    .why-industries-grid{
        grid-template-columns:repeat(3, 1fr);
    }

    .challenge-item{
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.14);
    }.industries-cta-inner{
        grid-template-columns:1fr;
        gap:22px;
    }

    .industries-cta-copy{
        max-width:680px;
        padding-left:22px;
        border-left:1px solid rgba(255,255,255,.18);
    }

    .industries-cta-action{
        justify-self:start;
    }
}

@media(max-width:720px){
    .industries-hero{
        padding:72px 0 66px;
    }

    .industries-hero-actions{
        align-items:stretch;
    }

    .industries-hero-actions .btn{
        width:70%;
    }

    .industries-detail-section,
    .industry-challenges,
    .why-logicflow-industries{
        padding:58px 0;
    }

    .industry-row,
    .industry-row.image-right{
        grid-template-columns:1fr;
        padding:34px 0;
    }

    .industry-row .industry-main,
    .industry-row.image-right .industry-main{
        order:1;
    }

    .industry-row .industry-image,
    .industry-row.image-right .industry-image{
        order:2;
    }

    .industry-row .industry-focus,
    .industry-row.image-right .industry-focus{
        order:3;
    }

    .industry-row .industry-fit,
    .industry-row.image-right .industry-fit{
        order:4;
    }

    .industry-image{
        width:100%;
        height:auto;
        aspect-ratio:16 / 10;
    }

    .industry-number{
        font-size:2.25rem;
    }

    .challenge-grid,
    .why-industries-grid{
        grid-template-columns:1fr;
    }

    .challenge-item{
        min-height:auto;
        padding:10px 0;
    }
    .industries-cta{
        padding:0;
    }

    .industries-cta-inner{
        padding:36px 0;
    }

    .industries-cta-heading{
        padding-left:18px;
    }

    .industries-cta-copy{
        padding-left:18px;
    }

    .industries-cta .btn-primary{
        width:70%;
        min-width:0;
    }
}