.page-shell{
    width:min(1250px,92%);
    margin:auto;
}

/* HERO */

.hero{
    text-align:center;
    padding:90px 0 70px;
}

.hero-pill{
    display:inline-block;
    padding:10px 22px;
    border-radius:40px;
    background:rgba(124,58,237,.15);
    border:1px solid rgba(124,58,237,.35);
    color:#c4b5fd;
    margin-bottom:25px;
}

.hero h1{
    font-size:62px;
    color:white;
    line-height:1.1;
    margin:0;
}

.gradient-text{
    display:block;
    background:linear-gradient(
    90deg,
    #3b82f6,
    #06b6d4,
    #7c3aed);

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

.hero p{
    max-width:760px;
    margin:30px auto;
    color:#94a3b8;
    line-height:1.8;
    font-size:18px;
}

/* GRID */

.cards-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(280px,1fr));

    gap:35px;

    margin-bottom:80px;

}

/* CARD */

.card{

    position:relative;

    overflow:hidden;

    text-align:center;

    padding:35px;

    border-radius:24px;

    background:rgba(255,255,255,.05);

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

    backdrop-filter:blur(18px);

    transition:.35s;

}

.card:hover{

    transform:translateY(-10px);

    border-color:rgba(59,130,246,.35);

}

.card::before{

    content:"";

    position:absolute;

    width:170px;

    height:170px;

    background:rgba(124,58,237,.18);

    filter:blur(70px);

    border-radius:50%;

    right:-60px;

    top:-60px;

}

/* ICON */

.icon{

    width:80px;

    height:80px;

    margin:auto;

    margin-bottom:25px;

    border-radius:20px;

    display:flex;

    justify-content:center;

    align-items:center;

    color:white;

    font-size:32px;

    background:linear-gradient(
    135deg,
    #3b82f6,
    #7c3aed);

}

/* TEXT */

.card h2{

    color:white;

    margin-bottom:15px;

}

.card p{

    color:#94a3b8;

    line-height:1.8;

    margin-bottom:30px;

}

/* FOOTER */

.site-footer{

    text-align:center;

    padding:35px;

    color:#94a3b8;

    border-top:1px solid rgba(255,255,255,.08);

}

/* MOBILE */

@media(max-width:768px){

.hero h1{

font-size:42px;

}

.cards-grid{

grid-template-columns:1fr;

}

}