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

*{
    box-sizing:border-box;
}

html,
body{
    margin:0;
    padding:0;
}

body{
    font-family:Arial, Helvetica, sans-serif;
    background:#f3f4f6;
}


/* =====================
   CONTAINER
===================== */

.container{
    width:100%;
    padding:50px 15px;
    display:flex;
    justify-content:center;
}


/* =====================
   MAIN CARD
===================== */

.main-card{
    width:100%;
    max-width:900px;

    background:white;

    padding:40px;

    border-radius:14px;

    box-shadow:0 4px 12px rgba(0,0,0,0.08);

    text-align:center;
}


/* =====================
   CARD ROW
===================== */

.card-row{
    display:flex;

    gap:25px;

    margin-top:30px;

    justify-content:center;
}


/* =====================
   CARD
===================== */

.card{
    flex:1;

    max-width:250px;

    border:1px solid #ddd;

    border-radius:12px;

    padding:20px;

    text-align:center;
}


/* =====================
   ICON
===================== */

.icon-circle{
    width:60px;
    height:60px;

    background:#4b1f7a;
    color:white;

    border-radius:50%;

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

    margin:0 auto 15px;

    font-size:24px;
}


/* =====================
   DESCRIPTION
===================== */

.desc{
    font-size:14px;
    color:#666;
    margin-bottom:12px;
    min-height:40px;
}


/* =====================
   BUTTON
===================== */

button{
    width:100%;

    padding:12px;

    margin-top:10px;

    border:none;

    border-radius:8px;

    background:#4b1f7a;

    color:white;

    font-weight:bold;

    cursor:pointer;

    transition:.2s;
}

button:hover{
    background:#36145a;
}


/* =====================
   LINKS
===================== */

a{
    text-decoration:none;
}


/* =====================
   WRAP CARD
===================== */

.wrap-card{
    width:100%;
    max-width:950px;

    margin:60px auto;

    background:white;

    padding:40px;

    border-radius:14px;

    box-shadow:0 4px 12px rgba(0,0,0,0.08);

    text-align:center;
}


/* =====================
   BOTTOM TEXT
===================== */

.bottom-text{
    margin-top:25px;
    font-size:14px;
}

.bottom-text a{
    color:#4b1f7a;
    text-decoration:none;
    font-weight:bold;
}


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

@media (max-width:768px){

    body{
        background:#f3f4f6;
    }

    .container{
        padding:12px;
    }

    .main-card{
        padding:24px;

        border-radius:14px;

        box-shadow:0 2px 8px rgba(0,0,0,0.05);
    }

    .card-row{
        flex-direction:column;
        gap:15px;
    }

    .card{
        width:100%;
        max-width:none;
    }

    .icon-circle{
        width:55px;
        height:55px;
        font-size:22px;
    }

    h1,
    h2{
        font-size:24px;
    }

    button{
        font-size:16px;
        padding:14px;
    }

    .wrap-card{
        margin:12px;
        padding:24px;

        border-radius:14px;

        box-shadow:0 2px 8px rgba(0,0,0,0.05);
    }
}


/* =====================
   LARGE DESKTOP
===================== */

@media (min-width:1200px){

    .main-card{
        max-width:950px;
    }

}