/* ==========================================================
   ASN HOMEPAGE HERO NEXT - POLISH PASS
   ========================================================== */

.asn-hero-next{
    --hero-blue:#2563eb;
    --hero-indigo:#4f46e5;
    --hero-purple:#7c3aed;
    --hero-cyan:#06b6d4;
    --hero-ink:#10245d;

    position:relative!important;
    isolation:isolate;
    overflow:hidden;

    min-height:auto!important;
    padding:58px 0 52px!important;

    background:
        radial-gradient(circle at 10% 16%,rgba(37,99,235,.16),transparent 30%),
        radial-gradient(circle at 88% 18%,rgba(124,58,237,.17),transparent 30%),
        radial-gradient(circle at 72% 84%,rgba(6,182,212,.09),transparent 28%),
        linear-gradient(135deg,#eef4ff 0%,#eef0ff 46%,#f7f3ff 100%)!important;
}

.asn-hero-next::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    pointer-events:none;
    background-image:
        linear-gradient(rgba(70,90,170,.035) 1px,transparent 1px),
        linear-gradient(90deg,rgba(70,90,170,.035) 1px,transparent 1px);
    background-size:44px 44px;
}

.asn-hero-next::after{
    content:"";
    position:absolute;
    width:560px;
    height:560px;
    right:-140px;
    top:-190px;
    border-radius:999px;
    background:radial-gradient(circle,rgba(99,102,241,.20),transparent 68%);
    filter:blur(10px);
    z-index:-1;
    pointer-events:none;
    animation:asnHeroAura 8s ease-in-out infinite alternate;
}

@keyframes asnHeroAura{
    from{transform:translate3d(0,0,0) scale(.95)}
    to{transform:translate3d(-60px,70px,0) scale(1.1)}
}


/* main hero internal layout */

.asn-hero-next > .asn-container,
.asn-hero-next > .container,
.asn-hero-next > div:first-child{
    position:relative;
}

.asn-hero-next .asn-hero-grid,
.asn-hero-next [class*="hero-grid"]{
    align-items:center!important;
    gap:56px!important;
}


/* copy */

.asn-hero-next-copy{
    position:relative;
    z-index:5;
    max-width:720px!important;
}

.asn-hero-next-badge{
    display:inline-flex;
    align-items:center;
    gap:9px;

    margin-bottom:17px;
    padding:8px 13px;

    border:1px solid rgba(79,70,229,.14);
    border-radius:999px;

    background:rgba(255,255,255,.68);
    backdrop-filter:blur(14px);

    box-shadow:0 10px 30px rgba(37,99,235,.08);

    color:#3049a2;
    font-size:12px;
    font-weight:800;
    letter-spacing:.03em;
}

.asn-hero-next-badge-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:linear-gradient(135deg,var(--hero-blue),var(--hero-cyan));
    box-shadow:0 0 0 5px rgba(37,99,235,.08);
}

.asn-hero-next-title{
    max-width:720px!important;
    margin:0 0 18px!important;

    font-size:clamp(54px,5.25vw,84px)!important;
    line-height:.97!important;
    letter-spacing:-.055em!important;
    font-weight:850!important;
    color:var(--hero-ink)!important;
}

.asn-hero-next-title > span{
    display:block;
}

.asn-hero-next-title .asn-hero-careers,
.asn-hero-next-title .asn-hero-transformed{
    background:linear-gradient(105deg,#2563eb,#4f46e5 48%,#7c3aed);
    background-size:180% auto;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:asnHeroTitleFlow 7s linear infinite;
}

@keyframes asnHeroTitleFlow{
    to{background-position:180% center}
}

.asn-hero-next-title .asn-hero-build{
    margin-top:6px;
    color:#10245d!important;
    -webkit-text-fill-color:initial;
}

.asn-hero-next-title .asn-hero-number{
    display:inline-block;
    background:linear-gradient(100deg,#173b9f,#2563eb,#06b6d4);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}

.asn-hero-next-copy > p,
.asn-hero-next-description{
    max-width:650px;
    margin-bottom:0!important;
    font-size:17px!important;
    line-height:1.7!important;
    color:#5d6880!important;
}


/* remove extra old badge if present */

.asn-hero-next .asn-home-badge,
.asn-hero-next .asn-hero-badge,
.asn-hero-next [class*="professional"][class*="badge"]{
    display:none!important;
}


/* search */

.asn-hero-next-search{
    width:100%;
    max-width:640px;
    margin:24px 0 18px!important;
    padding:7px!important;

    border:1px solid rgba(255,255,255,.95)!important;
    border-radius:19px!important;

    background:rgba(255,255,255,.86)!important;
    backdrop-filter:blur(18px) saturate(140%);

    box-shadow:
        0 18px 50px rgba(42,64,145,.12),
        inset 0 1px 0 rgba(255,255,255,.95);

    transition:transform .25s ease,box-shadow .25s ease;
}

.asn-hero-next-search:focus-within{
    transform:translateY(-2px);
    box-shadow:
        0 24px 60px rgba(42,64,145,.17),
        0 0 0 4px rgba(79,70,229,.05);
}

.asn-hero-next-search input{
    min-height:56px!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    background:transparent!important;
    padding-left:18px!important;
    font-size:15px!important;
}

.asn-hero-next-search button,
.asn-hero-next-search input[type="submit"]{
    min-height:56px!important;
    border:0!important;
    border-radius:13px!important;

    padding:0 24px!important;

    background:linear-gradient(110deg,#315bf4,#6439ef 65%,#7c3aed)!important;
    color:#fff!important;
    font-weight:800!important;

    box-shadow:0 12px 30px rgba(79,70,229,.25)!important;
}


/* CTA wrapper fix */

.asn-hero-next-cta-row{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;

    width:auto!important;
    max-width:none!important;

    margin:0 0 22px!important;
    padding:0!important;

    background:none!important;
    border:0!important;
    box-shadow:none!important;
}

.asn-hero-next .asn-hero-next-cta{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;

    min-height:50px!important;
    padding:0 24px!important;

    border-radius:999px!important;

    width:auto!important;
    flex:0 0 auto!important;

    transition:transform .25s ease,box-shadow .25s ease!important;
}

.asn-hero-next .asn-hero-next-cta:hover{
    transform:translateY(-3px);
}

.asn-hero-next .asn-hero-next-cta-primary{
    color:#fff!important;
    border:0!important;
    background:linear-gradient(110deg,#2563eb,#6439ef 60%,#06b6d4)!important;
    box-shadow:0 14px 32px rgba(59,80,220,.22)!important;
}

.asn-hero-next .asn-hero-next-cta-secondary{
    color:#24314e!important;
    border:1px solid rgba(43,65,119,.08)!important;
    background:rgba(255,255,255,.93)!important;
    box-shadow:0 12px 28px rgba(30,50,90,.08)!important;
}


/* stats */

.asn-hero-next-stats{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:14px!important;

    width:100%;
    max-width:640px;

    margin-top:0!important;
}

.asn-hero-next-stat{
    min-height:118px;

    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;

    padding:18px 20px!important;

    border-radius:20px!important;
    border:1px solid rgba(255,255,255,.90)!important;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.88),
            rgba(248,250,255,.75)
        )!important;

    backdrop-filter:blur(18px);

    box-shadow:
        0 16px 42px rgba(34,55,120,.10)!important;

    transition:transform .3s ease,box-shadow .3s ease!important;
}

.asn-hero-next-stat:hover{
    transform:translateY(-5px);
    box-shadow:0 24px 55px rgba(34,55,120,.14)!important;
}

.asn-hero-next-stat strong,
.asn-hero-next-stat [class*="number"],
.asn-hero-next-stat [class*="value"]{
    font-size:30px!important;
    line-height:1!important;
    font-weight:850!important;
    color:#3737dc!important;
}

.asn-hero-next-stat small,
.asn-hero-next-stat p,
.asn-hero-next-stat span{
    font-size:12px!important;
}


/* right visual */

.asn-hero-next-visual{
    position:relative;
    width:100%;
    max-width:620px!important;
    min-height:500px!important;

    margin-left:auto!important;

    transform-style:preserve-3d;
    will-change:transform;

    transition:transform .2s ease-out;
}

.asn-hero-next-visual::before{
    content:"";
    position:absolute;
    inset:5% 3%;
    z-index:-1;
    border-radius:40%;
    background:
        radial-gradient(
            circle,
            rgba(99,102,241,.23),
            rgba(6,182,212,.09) 46%,
            transparent 72%
        );
    filter:blur(45px);
}

.asn-hero-next-visual > div:first-child,
.asn-hero-next-visual [class*="visual-shell"],
.asn-hero-next-visual [class*="preview"]{
    transform:scale(1.08);
    transform-origin:center center;
}

.asn-hero-next-visual .asn-hero-float-next{
    box-shadow:0 18px 48px rgba(35,51,105,.15)!important;
    backdrop-filter:blur(18px);
    border:1px solid rgba(255,255,255,.84)!important;
    animation:asnHeroChipFloat 4.6s ease-in-out infinite alternate;
}

@keyframes asnHeroChipFloat{
    from{transform:translate3d(0,0,0)}
    to{transform:translate3d(0,-11px,0)}
}


/* benefits row immediately after hero */

.asn-home-benefits-next{
    margin-top:0!important;
    padding-top:28px!important;
    padding-bottom:40px!important;
}

.asn-home-benefits-next .asn-next-card,
.asn-home-benefits-next [class*="benefit"]{
    min-height:150px!important;
}

.asn-home-benefits-next-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:16px!important;
}


/* responsive */

@media (max-width:1100px){

    .asn-hero-next{
        padding-top:50px!important;
        padding-bottom:46px!important;
    }

    .asn-hero-next-title{
        font-size:clamp(48px,6vw,70px)!important;
    }

    .asn-hero-next-visual{
        max-width:540px!important;
        min-height:440px!important;
    }
}

@media (max-width:900px){

    .asn-hero-next .asn-hero-grid,
    .asn-hero-next [class*="hero-grid"]{
        grid-template-columns:1fr!important;
        gap:34px!important;
    }

    .asn-hero-next-copy{
        max-width:100%!important;
    }

    .asn-hero-next-visual{
        max-width:650px!important;
        margin:0 auto!important;
    }

    .asn-home-benefits-next-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}

@media (max-width:600px){

    .asn-hero-next{
        padding-top:34px!important;
        padding-bottom:36px!important;
    }

    .asn-hero-next-title{
        font-size:clamp(42px,12vw,56px)!important;
        line-height:1!important;
    }

    .asn-hero-next-copy > p,
    .asn-hero-next-description{
        font-size:16px!important;
        line-height:1.65!important;
    }

    .asn-hero-next-search{
        max-width:100%;
    }

    .asn-hero-next-cta-row{
        flex-wrap:wrap!important;
    }

    .asn-hero-next-stats{
        grid-template-columns:1fr!important;
    }

    .asn-hero-next-stat{
        min-height:96px;
    }

    .asn-hero-next-visual{
        min-height:360px!important;
    }

    .asn-home-benefits-next-grid{
        grid-template-columns:1fr!important;
    }
}

@media (prefers-reduced-motion:reduce){
    .asn-hero-next *,
    .asn-hero-next::after{
        animation:none!important;
        transition-duration:.01ms!important;
    }
}
