/*
========================================================
ASNETWORKZONE HOMEPAGE PREMIUM
Dedicated homepage stylesheet.
Loaded after all theme / redesign CSS.
========================================================
*/


/* ====================================================
   GLOBAL HOME
==================================================== */

body.home .asn-home-v2,
.asn-home-v2{
    width:100%;
    overflow:hidden;
    background:#fff;
    color:#172033;
    font-family:
        Inter,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;
}

.asn-home-v2 *,
.asn-home-v2 *:before,
.asn-home-v2 *:after{
    box-sizing:border-box;
}

.asn-home-v2 .asn-container{
    width:min(
        calc(100% - 48px),
        1240px
    ) !important;
    max-width:1240px !important;
    margin-left:auto !important;
    margin-right:auto !important;
}


/* ====================================================
   HERO
==================================================== */

.asn-home-v2 .asn2-hero{
    position:relative;
    display:block;
    width:100%;
    min-height:700px;
    padding:90px 0 80px !important;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 7% 15%,
            rgba(79,70,229,.16),
            transparent 32%
        ),
        radial-gradient(
            circle at 92% 25%,
            rgba(124,58,237,.13),
            transparent 30%
        ),
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f7f7fd 100%
        ) !important;
}

.asn-home-v2 .asn2-hero:before{
    content:"";
    position:absolute;
    width:520px;
    height:520px;
    left:-300px;
    bottom:-250px;
    border-radius:50%;
    border:1px solid rgba(79,70,229,.10);
    box-shadow:
        0 0 0 60px rgba(79,70,229,.025),
        0 0 0 120px rgba(79,70,229,.015);
}

.asn-home-v2 .asn2-hero-grid{
    position:relative;
    z-index:3;

    display:grid !important;
    grid-template-columns:
        minmax(0,1.06fr)
        minmax(420px,.94fr) !important;

    gap:70px !important;
    align-items:center !important;
}

.asn-home-v2 .asn2-hero-copy{
    min-width:0;
}

.asn-home-v2 .asn2-kicker{
    display:inline-flex !important;
    align-items:center;
    width:auto !important;

    padding:9px 16px !important;

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

    background:#efefff !important;
    color:#4f46e5 !important;

    font-size:12px !important;
    line-height:1.3;
    font-weight:800 !important;
    letter-spacing:.07em;
    text-transform:uppercase;
}

.asn-home-v2 .asn2-hero h1{
    display:block;
    max-width:760px !important;

    margin:
        24px 0
        24px !important;

    color:#161b2b !important;

    font-size:
        clamp(
            48px,
            4.8vw,
            72px
        ) !important;

    line-height:1.04 !important;
    letter-spacing:-.05em !important;
    font-weight:800 !important;
}

.asn-home-v2 .asn2-hero h1 span{
    display:block !important;
    margin-top:6px;

    background:
        linear-gradient(
            90deg,
            #4f46e5,
            #7c3aed
        );

    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    color:transparent !important;
}

.asn-home-v2 .asn2-hero-text{
    display:block;
    max-width:680px !important;

    margin:0 0 28px !important;

    color:#667085 !important;

    font-size:17px !important;
    line-height:1.75 !important;
}


/* ====================================================
   HERO SEARCH
==================================================== */

.asn-home-v2 .asn2-search{
    display:flex !important;
    flex-direction:row !important;
    align-items:center !important;

    width:100% !important;
    max-width:670px !important;

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

    overflow:hidden;

    border:
        1px solid
        #e3e6ef !important;

    border-radius:17px !important;

    background:#fff !important;

    box-shadow:
        0 20px 55px
        rgba(31,41,55,.09) !important;
}

.asn-home-v2 .asn2-search input{
    flex:1 1 auto !important;

    width:auto !important;
    min-width:0 !important;
    min-height:54px !important;

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

    border:0 !important;
    outline:0 !important;

    background:transparent !important;

    box-shadow:none !important;

    color:#1f2937 !important;
    font-size:15px !important;
}

.asn-home-v2 .asn2-search button{
    flex:0 0 auto !important;

    width:auto !important;
    min-width:150px !important;
    min-height:50px !important;

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

    border:0 !important;
    border-radius:12px !important;

    background:
        linear-gradient(
            135deg,
            #4f46e5,
            #7c3aed
        ) !important;

    color:#fff !important;

    font-size:14px !important;
    font-weight:800 !important;

    cursor:pointer;
}


/* ====================================================
   HERO BUTTONS
==================================================== */

.asn-home-v2 .asn2-actions{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;

    gap:12px !important;

    margin-top:25px !important;
}

.asn-home-v2 .asn2-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:auto !important;
    min-height:50px !important;

    padding:0 23px !important;

    border-radius:13px !important;

    text-decoration:none !important;

    font-size:14px !important;
    font-weight:800 !important;

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

.asn-home-v2 .asn2-btn:hover{
    transform:translateY(-3px);
}

.asn-home-v2 .asn2-btn-primary{
    color:#fff !important;

    background:
        linear-gradient(
            135deg,
            #4f46e5,
            #7c3aed
        ) !important;

    box-shadow:
        0 16px 34px
        rgba(79,70,229,.23) !important;
}

.asn-home-v2 .asn2-btn-secondary{
    border:
        1px solid
        #e1e5ee !important;

    background:#fff !important;

    color:#172033 !important;
}


/* ====================================================
   TRUST STATS
==================================================== */

.asn-home-v2 .asn2-trust-row{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:wrap !important;

    gap:32px !important;

    margin-top:32px !important;
}

.asn-home-v2 .asn2-trust-row div{
    display:flex !important;
    flex-direction:column !important;
    gap:2px;
}

.asn-home-v2 .asn2-trust-row strong{
    color:#4f46e5 !important;
    font-size:24px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
}

.asn-home-v2 .asn2-trust-row span{
    color:#667085 !important;
    font-size:12px !important;
    font-weight:650 !important;
}


/* ====================================================
   HERO RIGHT CARD
==================================================== */

.asn-home-v2 .asn2-hero-panel{
    position:relative !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:100% !important;
    min-height:510px !important;
}

.asn-home-v2 .asn2-brand-card{
    position:relative;
    z-index:3;

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

    width:350px !important;
    max-width:100% !important;
    min-height:320px !important;

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

    text-align:center !important;

    border:
        1px solid
        rgba(224,227,237,.95) !important;

    border-radius:32px !important;

    background:
        rgba(255,255,255,.92) !important;

    box-shadow:
        0 35px 85px
        rgba(49,46,129,.14) !important;

    backdrop-filter:blur(18px);
}

.asn-home-v2 .asn2-brand-card img{
    display:block !important;

    width:230px !important;
    max-width:230px !important;
    height:auto !important;
    max-height:120px !important;

    margin:0 auto !important;

    object-fit:contain !important;
}

.asn-home-v2 .asn2-brand-card p{
    max-width:250px;

    margin:28px auto 0 !important;

    color:#667085 !important;

    font-size:14px !important;
    line-height:1.65 !important;
}


/* FLOATING TECHNOLOGY CARDS */

.asn-home-v2 .asn2-floating-card{
    position:absolute !important;
    z-index:5;

    display:flex !important;
    align-items:center !important;

    width:auto !important;
    min-width:135px !important;

    gap:9px !important;

    padding:14px 17px !important;

    border:
        1px solid
        #e6e8ef !important;

    border-radius:16px !important;

    background:#fff !important;

    box-shadow:
        0 18px 45px
        rgba(31,41,55,.11) !important;

    font-size:14px !important;
    font-weight:800 !important;
}

.asn-home-v2 .asn2-floating-card span{
    font-size:20px !important;
}

.asn-home-v2 .asn2-float-1{
    top:55px !important;
    left:5px !important;
}

.asn-home-v2 .asn2-float-2{
    top:105px !important;
    right:-10px !important;
}

.asn-home-v2 .asn2-float-3{
    bottom:90px !important;
    left:-10px !important;
}

.asn-home-v2 .asn2-float-4{
    bottom:45px !important;
    right:5px !important;
}


/* ====================================================
   BENEFITS
==================================================== */

.asn-home-v2 .asn2-benefits{
    position:relative;
    z-index:8;

    margin-top:-28px !important;
    padding:0 !important;
}

.asn-home-v2 .asn2-benefit-grid{
    display:grid !important;

    grid-template-columns:
        repeat(
            4,
            minmax(0,1fr)
        ) !important;

    gap:16px !important;
}

.asn-home-v2 .asn2-benefit-grid article{
    display:flex !important;
    align-items:flex-start !important;

    gap:15px !important;

    min-width:0;

    padding:22px !important;

    border:
        1px solid
        #e5e8f0 !important;

    border-radius:18px !important;

    background:#fff !important;

    box-shadow:
        0 18px 45px
        rgba(31,41,55,.065) !important;
}

.asn-home-v2 .asn2-benefit-grid article > span{
    flex:none;
    font-size:26px !important;
}

.asn-home-v2 .asn2-benefit-grid h3{
    margin:0 0 6px !important;

    color:#172033 !important;

    font-size:16px !important;
    line-height:1.3 !important;
}

.asn-home-v2 .asn2-benefit-grid p{
    margin:0 !important;

    color:#667085 !important;

    font-size:13px !important;
    line-height:1.55 !important;
}


/* ====================================================
   GENERAL SECTION
==================================================== */

.asn-home-v2 .asn2-section{
    display:block;
    width:100%;

    padding:
        105px 0 !important;
}

.asn-home-v2 .asn2-section-soft{
    background:#f7f8fc !important;
}

.asn-home-v2 .asn2-section-dark{
    color:#fff !important;

    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(99,102,241,.24),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #0e1222,
            #1b1f38
        ) !important;
}

.asn-home-v2 .asn2-heading{
    display:block;

    width:100%;
    max-width:760px !important;

    margin:
        0 auto
        50px !important;

    text-align:center !important;
}

.asn-home-v2 .asn2-heading > span{
    color:#4f46e5 !important;

    font-size:12px !important;
    font-weight:850 !important;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.asn-home-v2 .asn2-heading h2{
    margin:
        15px 0
        12px !important;

    color:#172033 !important;

    font-size:
        clamp(
            38px,
            4vw,
            58px
        ) !important;

    line-height:1.08 !important;
    letter-spacing:-.04em !important;
    font-weight:800 !important;
}

.asn-home-v2 .asn2-heading h2 em{
    color:#4f46e5 !important;
    font-style:normal !important;
}

.asn-home-v2 .asn2-heading p{
    max-width:680px;

    margin:
        0 auto !important;

    color:#667085 !important;

    font-size:15px !important;
    line-height:1.75 !important;
}

.asn-home-v2
.asn2-heading-light h2{
    color:#fff !important;
}

.asn-home-v2
.asn2-heading-light h2 em{
    color:#a5b4fc !important;
}

.asn-home-v2
.asn2-heading-row{
    max-width:none !important;

    display:flex !important;

    align-items:flex-end !important;
    justify-content:space-between !important;

    gap:40px;

    text-align:left !important;
}

.asn-home-v2
.asn2-heading-row > div{
    max-width:720px;
}


/* ====================================================
   CATEGORY CARDS
==================================================== */

.asn-home-v2 .asn2-category-grid{
    display:grid !important;

    grid-template-columns:
        repeat(
            5,
            minmax(0,1fr)
        ) !important;

    gap:16px !important;
}

.asn-home-v2 .asn2-category-card{
    position:relative;

    display:flex !important;
    flex-direction:column !important;

    min-width:0 !important;
    min-height:180px !important;

    padding:25px !important;

    border:
        1px solid
        #e6e9f2 !important;

    border-radius:21px !important;

    background:#fff !important;

    color:#172033 !important;

    text-decoration:none !important;

    box-shadow:
        0 8px 24px
        rgba(31,41,55,.035);

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

.asn-home-v2
.asn2-category-card:hover{
    transform:translateY(-7px);

    box-shadow:
        0 25px 60px
        rgba(31,41,55,.09);
}

.asn-home-v2
.asn2-category-icon{
    display:block;

    font-size:31px !important;
}

.asn-home-v2
.asn2-category-card h3{
    margin:
        25px 0
        auto !important;

    color:#172033 !important;

    font-size:18px !important;
    line-height:1.35 !important;
}

.asn-home-v2
.asn2-category-arrow{
    display:block;

    margin-top:20px;

    color:#4f46e5 !important;

    text-align:right;

    font-size:23px !important;
}


/* ====================================================
   FEATURED COURSES
==================================================== */

.asn-home-v2 .asn2-course-grid{
    display:grid !important;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        ) !important;

    gap:24px !important;
}

.asn-home-v2 .asn2-course-card{
    display:flex !important;
    flex-direction:column !important;

    min-width:0 !important;

    overflow:hidden !important;

    border:
        1px solid
        #e5e8f0 !important;

    border-radius:21px !important;

    background:#fff !important;

    box-shadow:
        0 16px 42px
        rgba(31,41,55,.055) !important;

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

.asn-home-v2
.asn2-course-card:hover{
    transform:translateY(-7px);

    box-shadow:
        0 27px 65px
        rgba(31,41,55,.10) !important;
}

.asn-home-v2
.asn2-course-image{
    display:block !important;

    width:100% !important;
    height:auto !important;

    aspect-ratio:
        16 / 10 !important;

    overflow:hidden !important;

    background:#f0f1f6 !important;
}

.asn-home-v2
.asn2-course-image img{
    display:block !important;

    width:100% !important;
    max-width:none !important;
    height:100% !important;

    margin:0 !important;

    object-fit:contain !important;

    padding:18px !important;

    background:#fff;

    transition:
        transform .35s ease;
}

.asn-home-v2
.asn2-course-card:hover
.asn2-course-image img{
    transform:scale(1.035);
}

.asn-home-v2
.asn2-course-body{
    display:flex !important;
    flex:1 1 auto !important;
    flex-direction:column !important;

    padding:24px !important;
}

.asn-home-v2
.asn2-course-label{
    display:block !important;

    color:#4f46e5 !important;

    font-size:11px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.asn-home-v2
.asn2-course-body h3{
    margin:
        11px 0
        22px !important;

    color:#172033 !important;

    font-size:19px !important;
    line-height:1.35 !important;
    font-weight:750 !important;
}

.asn-home-v2
.asn2-course-body h3 a{
    color:#172033 !important;
    text-decoration:none !important;
}

.asn-home-v2
.asn2-course-link,
.asn-home-v2
.asn2-text-link{
    color:#4f46e5 !important;

    text-decoration:none !important;

    font-size:14px !important;
    font-weight:800 !important;
}


/* ====================================================
   UNIQUE FEATURES
==================================================== */

.asn-home-v2 .asn2-feature-grid{
    display:grid !important;

    grid-template-columns:
        repeat(
            4,
            minmax(0,1fr)
        ) !important;

    gap:18px !important;
}

.asn-home-v2 .asn2-feature-card{
    display:block;

    min-width:0;

    padding:28px !important;

    border:
        1px solid
        #e6e9f2 !important;

    border-radius:19px !important;

    background:#f8f9fc !important;

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

.asn-home-v2
.asn2-feature-card:hover{
    transform:translateY(-6px);

    background:#fff !important;

    box-shadow:
        0 22px 55px
        rgba(31,41,55,.08);
}

.asn-home-v2
.asn2-feature-icon{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    width:56px !important;
    height:56px !important;

    border-radius:15px !important;

    background:#fff !important;

    font-size:26px !important;

    box-shadow:
        0 10px 27px
        rgba(31,41,55,.08);
}

.asn-home-v2
.asn2-feature-card h3{
    margin:
        20px 0
        10px !important;

    color:#172033 !important;

    font-size:18px !important;
    line-height:1.35 !important;
}

.asn-home-v2
.asn2-feature-card p{
    margin:0 !important;

    color:#667085 !important;

    font-size:14px !important;
    line-height:1.72 !important;
}


/* ====================================================
   LEARNING OPTIONS
==================================================== */

.asn-home-v2 .asn2-learning-grid{
    display:grid !important;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        ) !important;

    gap:16px !important;
}

.asn-home-v2 .asn2-learning-grid a{
    display:grid !important;

    grid-template-columns:
        auto 1fr auto !important;

    align-items:center !important;

    gap:16px !important;

    min-width:0;
    min-height:105px !important;

    padding:24px !important;

    border:
        1px solid
        rgba(255,255,255,.10) !important;

    border-radius:18px !important;

    background:
        rgba(255,255,255,.045) !important;

    color:#fff !important;

    text-decoration:none !important;

    transition:
        transform .25s ease,
        background .25s ease !important;
}

.asn-home-v2
.asn2-learning-grid a:hover{
    transform:translateY(-4px);

    background:
        rgba(255,255,255,.095) !important;
}

.asn-home-v2
.asn2-learning-grid span{
    color:#a5b4fc !important;

    font-size:13px !important;
    font-weight:900 !important;
}

.asn-home-v2
.asn2-learning-grid h3{
    margin:0 !important;

    color:#fff !important;

    font-size:18px !important;
    line-height:1.3 !important;
}

.asn-home-v2
.asn2-learning-grid strong{
    color:#fff !important;
    font-size:20px !important;
}


/* ====================================================
   COMPANY LOGOS
==================================================== */

.asn-home-v2 .asn2-logo-strip{
    display:grid !important;

    grid-template-columns:
        repeat(
            7,
            minmax(0,1fr)
        ) !important;

    gap:14px !important;
}

.asn-home-v2 .asn2-logo-item{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    min-width:0;
    min-height:105px !important;

    padding:22px !important;

    border:
        1px solid
        #e6e9f2 !important;

    border-radius:17px !important;

    background:#fff !important;
}

.asn-home-v2
.asn2-logo-item img{
    display:block !important;

    width:auto !important;
    max-width:100% !important;
    height:auto !important;
    max-height:50px !important;

    margin:auto !important;

    object-fit:contain !important;
}


/* ====================================================
   TRAINING PROCESS
==================================================== */

.asn-home-v2 .asn2-process-grid{
    display:grid !important;

    grid-template-columns:
        repeat(
            4,
            minmax(0,1fr)
        ) !important;

    gap:18px !important;
}

.asn-home-v2 .asn2-process-grid article{
    min-width:0;

    padding:30px !important;

    border:
        1px solid
        #e6e9f2 !important;

    border-radius:20px !important;

    background:#fff !important;
}

.asn-home-v2
.asn2-process-grid article > span{
    color:#4f46e5 !important;

    font-size:13px !important;
    font-weight:900 !important;
}

.asn-home-v2
.asn2-process-grid h3{
    margin:
        28px 0
        10px !important;

    color:#172033 !important;

    font-size:19px !important;
    line-height:1.35 !important;
}

.asn-home-v2
.asn2-process-grid p{
    margin:0 !important;

    color:#667085 !important;

    font-size:14px !important;
    line-height:1.7 !important;
}


/* ====================================================
   TESTIMONIALS
==================================================== */

.asn-home-v2
.asn2-testimonial-grid{
    display:grid !important;

    grid-template-columns:
        repeat(
            2,
            minmax(0,1fr)
        ) !important;

    gap:22px !important;
}

.asn-home-v2
.asn2-testimonial-grid article{
    min-width:0;

    padding:35px !important;

    border:
        1px solid
        #e6e9f2 !important;

    border-radius:22px !important;

    background:#fff !important;

    box-shadow:
        0 18px 45px
        rgba(31,41,55,.055) !important;
}

.asn-home-v2 .asn2-quote{
    display:block;

    height:50px;

    color:#4f46e5 !important;

    font-size:68px !important;
    line-height:.8 !important;
}

.asn-home-v2
.asn2-testimonial-grid article > p{
    margin:
        12px 0
        0 !important;

    color:#4c5669 !important;

    font-size:16px !important;
    line-height:1.8 !important;
}

.asn-home-v2 .asn2-person{
    display:flex !important;
    align-items:center !important;

    gap:14px !important;

    margin-top:26px !important;
}

.asn-home-v2 .asn2-person img{
    flex:none;

    width:58px !important;
    max-width:58px !important;
    height:58px !important;

    margin:0 !important;

    border-radius:50% !important;

    object-fit:cover !important;
}

.asn-home-v2
.asn2-person strong{
    display:block;

    color:#172033 !important;

    font-size:14px !important;
}

.asn-home-v2
.asn2-person span{
    display:block;

    margin-top:4px;

    color:#667085 !important;

    font-size:12px !important;
}


/* ====================================================
   FAQ
==================================================== */

.asn-home-v2 .asn2-faq-layout{
    display:grid !important;

    grid-template-columns:
        minmax(0,.82fr)
        minmax(0,1.18fr) !important;

    gap:75px !important;

    align-items:start !important;
}

.asn-home-v2 .asn2-faq-heading{
    margin:0 !important;

    text-align:left !important;
}

.asn-home-v2 .asn2-faq-list{
    width:100%;

    border-top:
        1px solid
        #dfe3eb !important;
}

.asn-home-v2 .asn2-faq-item{
    border-bottom:
        1px solid
        #dfe3eb !important;
}

.asn-home-v2 .asn2-faq-item button{
    display:flex !important;

    width:100% !important;
    min-height:74px !important;

    align-items:center !important;
    justify-content:space-between !important;

    gap:20px;

    margin:0 !important;
    padding:0 !important;

    border:0 !important;

    background:transparent !important;

    color:#172033 !important;

    text-align:left !important;

    font-size:16px !important;
    line-height:1.4 !important;
    font-weight:750 !important;

    cursor:pointer;
}

.asn-home-v2
.asn2-faq-item button strong{
    color:#4f46e5 !important;

    font-size:24px !important;

    transition:
        transform .25s ease;
}

.asn-home-v2
.asn2-faq-item.is-open
button strong{
    transform:rotate(45deg);
}


/* ====================================================
   FINAL CTA
==================================================== */

.asn-home-v2 .asn2-final-cta{
    display:block;

    padding:
        30px 0
        100px !important;

    background:#fff;
}

.asn-home-v2 .asn2-cta-card{
    display:flex !important;

    align-items:center !important;
    justify-content:space-between !important;

    gap:45px !important;

    padding:55px !important;

    border-radius:29px !important;

    background:
        radial-gradient(
            circle at 10% 10%,
            rgba(255,255,255,.13),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #312e81,
            #4f46e5 55%,
            #7c3aed
        ) !important;

    color:#fff !important;

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

.asn-home-v2
.asn2-cta-card > div:first-child{
    max-width:690px;
}

.asn-home-v2 .asn2-cta-card span{
    color:#fff !important;

    font-size:12px !important;
    font-weight:850 !important;
    letter-spacing:.1em;
    text-transform:uppercase;
}

.asn-home-v2 .asn2-cta-card h2{
    margin:
        13px 0
        12px !important;

    color:#fff !important;

    font-size:
        clamp(
            34px,
            3.5vw,
            52px
        ) !important;

    line-height:1.08 !important;
    letter-spacing:-.035em !important;
}

.asn-home-v2 .asn2-cta-card p{
    margin:0 !important;

    color:
        rgba(255,255,255,.77) !important;

    line-height:1.7 !important;
}

.asn-home-v2 .asn2-cta-actions{
    display:flex !important;
    flex-wrap:wrap !important;

    gap:10px !important;
}

.asn-home-v2 .asn2-btn-light{
    background:#fff !important;

    color:#312e81 !important;
}

.asn-home-v2 .asn2-btn-outline{
    border:
        1px solid
        rgba(255,255,255,.45) !important;

    background:transparent !important;

    color:#fff !important;
}


/* ====================================================
   HOMEPAGE FOOTER FIX
==================================================== */

body.home .asn-footer .asn-container{
    width:min(
        calc(100% - 48px),
        1240px
    ) !important;
    max-width:1240px !important;

    margin:auto !important;
}

body.home .asn-footer-top{
    display:grid !important;

    grid-template-columns:
        minmax(280px,1.35fr)
        minmax(150px,.70fr)
        minmax(190px,1fr)
        minmax(190px,1fr) !important;

    gap:50px !important;

    align-items:start !important;
}

body.home .asn-footer-column{
    min-width:0 !important;
}

body.home .asn-footer-column a{
    display:block !important;

    width:auto !important;

    margin:10px 0 !important;

    word-break:normal !important;
    overflow-wrap:normal !important;
    white-space:normal !important;

    font-size:13px !important;
    line-height:1.55 !important;
}

body.home .asn-footer-contact-item span,
body.home .asn-footer-contact-item a{
    word-break:normal !important;
    overflow-wrap:normal !important;
}

body.home .asn-footer-social{
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;

    gap:25px !important;
}

body.home .asn-social-pills{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
}


/* ====================================================
   REVEAL
==================================================== */

.asn-home-v2 .asn-premium-reveal{
    opacity:0;

    transform:
        translateY(22px);

    transition:
        opacity .65s ease,
        transform .65s ease;
}

.asn-home-v2 .asn-premium-reveal.is-visible{
    opacity:1;
    transform:none;
}


/* ====================================================
   TABLET
==================================================== */

@media(max-width:1100px){

    .asn-home-v2
    .asn2-hero-grid{
        grid-template-columns:1fr !important;
    }

    .asn-home-v2
    .asn2-hero-copy{
        max-width:850px;

        margin:auto;

        text-align:center;
    }

    .asn-home-v2
    .asn2-search{
        margin-left:auto !important;
        margin-right:auto !important;
    }

    .asn-home-v2
    .asn2-actions,
    .asn-home-v2
    .asn2-trust-row{
        justify-content:center !important;
    }

    .asn-home-v2
    .asn2-hero-panel{
        width:min(100%,650px) !important;

        margin:auto !important;
    }

    .asn-home-v2
    .asn2-category-grid{
        grid-template-columns:
            repeat(
                3,
                minmax(0,1fr)
            ) !important;
    }

    .asn-home-v2
    .asn2-benefit-grid,
    .asn-home-v2
    .asn2-feature-grid,
    .asn-home-v2
    .asn2-process-grid{
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            ) !important;
    }

    .asn-home-v2
    .asn2-logo-strip{
        grid-template-columns:
            repeat(
                4,
                minmax(0,1fr)
            ) !important;
    }

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

}


/* ====================================================
   MOBILE
==================================================== */

@media(max-width:767px){

    .asn-home-v2
    .asn-container{
        width:
            calc(100% - 28px)
            !important;
    }

    .asn-home-v2
    .asn2-hero{
        min-height:auto;

        padding:
            55px 0
            65px !important;
    }

    .asn-home-v2
    .asn2-hero h1{
        font-size:40px !important;
    }

    .asn-home-v2
    .asn2-hero-text{
        font-size:15px !important;
    }

    .asn-home-v2
    .asn2-search{
        display:block !important;

        padding:8px !important;
    }

    .asn-home-v2
    .asn2-search input{
        display:block !important;

        width:100% !important;
    }

    .asn-home-v2
    .asn2-search button{
        display:block !important;

        width:100% !important;

        margin-top:5px !important;
    }

    .asn-home-v2
    .asn2-hero-panel{
        min-height:400px !important;
    }

    .asn-home-v2
    .asn2-brand-card{
        width:270px !important;
        min-height:245px !important;

        padding:30px !important;
    }

    .asn-home-v2
    .asn2-brand-card img{
        width:190px !important;
    }

    .asn-home-v2
    .asn2-floating-card{
        min-width:auto !important;

        padding:
            9px 12px !important;

        font-size:11px !important;
    }

    .asn-home-v2
    .asn2-benefit-grid,
    .asn-home-v2
    .asn2-category-grid,
    .asn-home-v2
    .asn2-course-grid,
    .asn-home-v2
    .asn2-feature-grid,
    .asn-home-v2
    .asn2-learning-grid,
    .asn-home-v2
    .asn2-process-grid,
    .asn-home-v2
    .asn2-testimonial-grid,
    .asn-home-v2
    .asn2-faq-layout{
        grid-template-columns:
            1fr !important;
    }

    .asn-home-v2
    .asn2-section{
        padding:
            72px 0 !important;
    }

    .asn-home-v2
    .asn2-heading h2{
        font-size:36px !important;
    }

    .asn-home-v2
    .asn2-heading-row{
        display:block !important;

        text-align:center !important;
    }

    .asn-home-v2
    .asn2-heading-row
    .asn2-text-link{
        display:inline-block;

        margin-top:18px;
    }

    .asn-home-v2
    .asn2-logo-strip{
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            ) !important;
    }

    .asn-home-v2
    .asn2-faq-heading{
        text-align:center !important;
    }

    .asn-home-v2
    .asn2-cta-card{
        display:block !important;

        padding:
            35px 25px !important;

        text-align:center;
    }

    .asn-home-v2
    .asn2-cta-actions{
        justify-content:center !important;

        margin-top:25px;
    }

    body.home
    .asn-footer .asn-container{
        width:
            calc(100% - 30px)
            !important;
    }

    body.home
    .asn-footer-top{
        grid-template-columns:
            1fr !important;

        gap:32px !important;
    }

    body.home
    .asn-footer-social{
        display:block !important;

        text-align:center;
    }

    body.home
    .asn-social-pills{
        justify-content:center !important;

        margin-top:14px;
    }

}

@media(max-width:430px){

    .asn-home-v2
    .asn2-hero h1{
        font-size:35px !important;
    }

}


/* ====================================================
   PHASE 11 - FINAL HOMEPAGE POLISH
==================================================== */


/* HERO tighter composition */

.asn-home-v2 .asn2-hero{
    padding-top:78px !important;
    padding-bottom:72px !important;
}

.asn-home-v2 .asn2-hero-grid{
    gap:55px !important;
}

.asn-home-v2 .asn2-hero h1{
    max-width:720px !important;
}

.asn-home-v2 .asn2-hero-panel{
    min-height:460px !important;
}


/* hero subtle animation */

.asn-home-v2 .asn2-brand-card{
    animation:
        asnFloatCard
        6s ease-in-out
        infinite;
}

.asn-home-v2 .asn2-floating-card{
    animation:
        asnFloatSmall
        5s ease-in-out
        infinite;
}

.asn-home-v2 .asn2-float-2{
    animation-delay:.6s;
}

.asn-home-v2 .asn2-float-3{
    animation-delay:1.1s;
}

.asn-home-v2 .asn2-float-4{
    animation-delay:1.6s;
}

@keyframes asnFloatCard{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-9px);
    }

}

@keyframes asnFloatSmall{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-6px);
    }

}


/* stronger stat styling */

.asn-home-v2 .asn2-trust-row div{
    position:relative;

    padding-right:26px;
}

.asn-home-v2 .asn2-trust-row div:not(:last-child):after{
    content:"";

    position:absolute;

    right:0;
    top:4px;

    width:1px;
    height:35px;

    background:#e2e5ed;
}


/* stronger benefit cards */

.asn-home-v2 .asn2-benefit-grid article{
    transition:
        transform .3s ease,
        box-shadow .3s ease,
        border-color .3s ease !important;
}

.asn-home-v2 .asn2-benefit-grid article:hover{
    transform:translateY(-5px);

    border-color:
        rgba(79,70,229,.20) !important;

    box-shadow:
        0 24px 55px
        rgba(31,41,55,.09) !important;
}


/* category accent line */

.asn-home-v2 .asn2-category-card:before{
    content:"";

    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:3px;

    opacity:0;

    background:
        linear-gradient(
            90deg,
            #4f46e5,
            #7c3aed
        );

    transition:opacity .25s ease;
}

.asn-home-v2 .asn2-category-card:hover:before{
    opacity:1;
}


/* course image polish */

.asn-home-v2 .asn2-course-image{
    background:
        linear-gradient(
            180deg,
            #fff,
            #f8f9fc
        ) !important;
}

.asn-home-v2 .asn2-course-card{
    position:relative;
}

.asn-home-v2 .asn2-course-card:after{
    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:100%;
    height:3px;

    opacity:0;

    background:
        linear-gradient(
            90deg,
            #4f46e5,
            #7c3aed
        );

    transition:opacity .25s ease;
}

.asn-home-v2 .asn2-course-card:hover:after{
    opacity:1;
}


/* unique feature accent */

.asn-home-v2 .asn2-feature-card{
    position:relative;
    overflow:hidden;
}

.asn-home-v2 .asn2-feature-card:before{
    content:"";

    position:absolute;

    width:110px;
    height:110px;

    right:-50px;
    top:-50px;

    border-radius:50%;

    background:
        rgba(79,70,229,.045);
}


/* Learning options ensure dark contrast */

.asn-home-v2 .asn2-section-dark{
    background:
        radial-gradient(
            circle at 10% 15%,
            rgba(99,102,241,.30),
            transparent 32%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(124,58,237,.20),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #0c1020,
            #171c34 55%,
            #202446
        ) !important;
}

.asn-home-v2 .asn2-learning-grid a{
    border-color:
        rgba(255,255,255,.12) !important;

    background:
        rgba(255,255,255,.055) !important;

    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,.035);
}

.asn-home-v2 .asn2-learning-grid a:hover{
    background:
        rgba(255,255,255,.11) !important;

    border-color:
        rgba(165,180,252,.30) !important;
}


/* logo hover */

.asn-home-v2 .asn2-logo-item{
    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.asn-home-v2 .asn2-logo-item:hover{
    transform:translateY(-5px);

    box-shadow:
        0 20px 45px
        rgba(31,41,55,.08);
}


/* process step number */

.asn-home-v2 .asn2-process-grid article{
    position:relative;
    overflow:hidden;
}

.asn-home-v2 .asn2-process-grid article > span{
    display:inline-flex;

    align-items:center;
    justify-content:center;

    width:38px;
    height:38px;

    border-radius:10px;

    background:#efefff;

    color:#4f46e5 !important;
}


/* testimonial premium */

.asn-home-v2 .asn2-testimonial-grid article{
    position:relative;
}

.asn-home-v2 .asn2-testimonial-grid article:before{
    content:"";

    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:3px;

    background:
        linear-gradient(
            90deg,
            #4f46e5,
            #7c3aed
        );
}


/* FAQ better */

.asn-home-v2 .asn2-faq-item{
    transition:
        background .25s ease;
}

.asn-home-v2 .asn2-faq-item:hover{
    background:
        rgba(79,70,229,.025);
}

.asn-home-v2 .asn2-faq-item button{
    padding-left:4px !important;
    padding-right:4px !important;
}


/* final CTA stronger */

.asn-home-v2 .asn2-cta-card{
    position:relative;

    overflow:hidden;

    background:
        radial-gradient(
            circle at 12% 12%,
            rgba(255,255,255,.17),
            transparent 32%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(255,255,255,.08),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #29236d,
            #4f46e5 55%,
            #7c3aed
        ) !important;
}

.asn-home-v2 .asn2-cta-card:after{
    content:"";

    position:absolute;

    width:340px;
    height:340px;

    right:-170px;
    top:-180px;

    border-radius:50%;

    border:
        1px solid
        rgba(255,255,255,.12);

    box-shadow:
        0 0 0 50px
        rgba(255,255,255,.025),
        0 0 0 100px
        rgba(255,255,255,.015);
}

.asn-home-v2 .asn2-cta-card > *{
    position:relative;
    z-index:2;
}


/* footer slightly tighter */

body.home .asn-footer{
    padding-top:70px !important;
}

body.home .asn-footer-top{
    gap:42px !important;
}


/* mobile */

@media(max-width:767px){

    .asn-home-v2 .asn2-trust-row{
        gap:18px !important;
    }

    .asn-home-v2 .asn2-trust-row div{
        padding-right:0;
    }

    .asn-home-v2
    .asn2-trust-row
    div:after{
        display:none;
    }

    .asn-home-v2
    .asn2-hero-panel{
        min-height:370px !important;
    }

    .asn-home-v2
    .asn2-floating-card{
        animation:none;
    }

    .asn-home-v2
    .asn2-brand-card{
        animation:none;
    }

}


/* ====================================================
   PHASE 12 - DYNAMIC KPI / TRUST CARDS
==================================================== */

.asn-home-v2 .asn2-trust-row{
    display:grid !important;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        ) !important;

    gap:14px !important;

    width:100% !important;
    max-width:680px !important;

    margin-top:34px !important;
}


/* remove old divider */

.asn-home-v2
.asn2-trust-row
div:after{
    display:none !important;
}


/* individual KPI */

.asn-home-v2
.asn2-trust-row > div{
    position:relative !important;

    display:flex !important;
    flex-direction:column !important;

    min-height:118px !important;

    padding:
        21px 20px
        19px !important;

    overflow:hidden;

    border:
        1px solid
        rgba(226,229,239,.95) !important;

    border-radius:18px !important;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,.98),
            rgba(248,249,255,.94)
        ) !important;

    box-shadow:
        0 12px 30px
        rgba(31,41,55,.055) !important;

    transform:
        perspective(900px)
        translateZ(0);

    transition:
        transform .28s ease,
        box-shadow .28s ease,
        border-color .28s ease !important;

    cursor:default;
}


/* accent glow */

.asn-home-v2
.asn2-trust-row > div:before{
    content:"";

    position:absolute;

    width:100px;
    height:100px;

    right:-45px;
    top:-45px;

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(79,70,229,.16),
            transparent 68%
        );

    opacity:.55;

    transition:
        transform .35s ease,
        opacity .35s ease;
}


/* top gradient line */

.asn-home-v2
.asn2-trust-row > div
.asn-kpi-line{
    position:absolute;

    left:0;
    top:0;

    width:100%;
    height:3px;

    opacity:0;

    background:
        linear-gradient(
            90deg,
            #4f46e5,
            #7c3aed,
            #a855f7
        );

    transition:
        opacity .3s ease;
}


/* hover */

.asn-home-v2
.asn2-trust-row > div:hover{
    transform:
        perspective(900px)
        translateY(-8px)
        rotateX(2deg);

    border-color:
        rgba(99,102,241,.24) !important;

    box-shadow:
        0 24px 55px
        rgba(49,46,129,.13) !important;
}

.asn-home-v2
.asn2-trust-row > div:hover:before{
    opacity:1;

    transform:
        scale(1.25);
}

.asn-home-v2
.asn2-trust-row > div:hover
.asn-kpi-line{
    opacity:1;
}


/* KPI icon */

.asn-home-v2
.asn-kpi-icon{
    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    width:38px !important;
    height:38px !important;

    margin-bottom:12px !important;

    border-radius:11px !important;

    background:
        linear-gradient(
            135deg,
            #efefff,
            #f7f5ff
        ) !important;

    color:#4f46e5 !important;

    font-size:17px !important;

    box-shadow:
        0 8px 20px
        rgba(79,70,229,.08);
}


/* number */

.asn-home-v2
.asn2-trust-row strong{
    position:relative;
    z-index:2;

    display:block !important;

    margin:0 !important;

    color:#3f37d8 !important;

    font-size:30px !important;
    line-height:1 !important;
    font-weight:900 !important;

    letter-spacing:-.03em;

    transition:
        transform .28s ease,
        color .28s ease;
}

.asn-home-v2
.asn2-trust-row > div:hover strong{
    transform:
        translateY(-2px)
        scale(1.06);

    color:#6d28d9 !important;
}


/* label */

.asn-home-v2
.asn2-trust-row span:not(.asn-kpi-icon){
    position:relative;
    z-index:2;

    display:block !important;

    margin-top:7px !important;

    color:#667085 !important;

    font-size:12px !important;
    line-height:1.35 !important;
    font-weight:700 !important;
}


/* number pulse on reveal */

.asn-home-v2
.asn-kpi-pulse{
    animation:
        asnKpiPulse
        .7s ease;
}

@keyframes asnKpiPulse{

    0%{
        transform:scale(.85);
        opacity:.4;
    }

    60%{
        transform:scale(1.10);
        opacity:1;
    }

    100%{
        transform:scale(1);
        opacity:1;
    }

}


/* subtle moving highlight */

.asn-home-v2
.asn2-trust-row > div
.asn-kpi-shine{
    position:absolute;

    width:80px;
    height:180px;

    top:-30px;
    left:-110px;

    opacity:0;

    transform:
        rotate(18deg);

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.75),
            transparent
        );

    pointer-events:none;
}

.asn-home-v2
.asn2-trust-row > div:hover
.asn-kpi-shine{
    animation:
        asnKpiShine
        .75s ease;
}

@keyframes asnKpiShine{

    0%{
        left:-110px;
        opacity:0;
    }

    20%{
        opacity:.8;
    }

    100%{
        left:130%;
        opacity:0;
    }

}


/* ====================================================
   MOBILE KPI
==================================================== */

@media(max-width:767px){

    .asn-home-v2
    .asn2-trust-row{
        grid-template-columns:1fr !important;

        max-width:420px !important;

        margin-left:auto !important;
        margin-right:auto !important;
    }

    .asn-home-v2
    .asn2-trust-row > div{
        min-height:100px !important;
    }

}
