/*=========================================
        CATEGORIES SECTION
=========================================*/

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Hind',sans-serif;
    background:#ffffff;
    color:#222;
    overflow-x:hidden;
}

/*=========================================
BACKGROUND
=========================================*/

.categories{

    width:100%;
    min-height:100vh;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:80px 8%;

    position:relative;

    overflow:hidden;

    background:
    radial-gradient(circle at top right,
    rgba(123,47,247,.15),
    transparent 35%),

    radial-gradient(circle at bottom left,
    rgba(168,85,247,.08),
    transparent 35%),

    linear-gradient(
    135deg,
    #ffffff 0%,
    #faf8ff 55%,
    #ffffff 100%);
}

.categories::before{

    content:"";

    position:absolute;

    width:520px;
    height:520px;

    top:-120px;
    right:-120px;

    background:#A855F7;

    opacity:.12;

    border-radius:50%;

    filter:blur(150px);

}

.categories::after{

    content:"";

    position:absolute;

    width:350px;
    height:350px;

    left:-120px;
    bottom:-120px;

    background:#7B2FF7;

    opacity:.08;

    border-radius:50%;

    filter:blur(120px);

}

/*=========================================
CONTAINER
=========================================*/

.categories-container{

    width:100%;
    max-width:1400px;

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;

    position:relative;

    z-index:2;

}

/*=========================================
LEFT
=========================================*/

.categories-left{

    animation:fadeLeft .9s ease;

}

.categories-badge{

    display:inline-block;

    padding:10px 22px;

    border-radius:50px;

    background:#F3ECFF;

    color:#6D28D9;

    border:1.5px solid #C084FC;

    font-family:'Hind',sans-serif;

    font-size:16px;

    font-weight:600;

    margin-bottom:28px;

}

.categories-left h2{

    font-family:'Hind',sans-serif;

    color:#18122B;

    font-size:50px;

    font-weight:700;

    line-height:1.28;

    margin-bottom:28px;

    max-width:620px;

}

.categories-left p{

    max-width:600px;

    color:#444;

    font-family:'Hind',sans-serif;

    font-size:20px;

    font-weight:400;

    line-height:1.85;

    margin-bottom:35px;

}

/*=========================================
CATEGORY GRID
=========================================*/

.category-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:14px;

    margin-bottom:30px;

}

.category-grid div{

    background:#EEE7FF;

    border:2px solid #7B2FF7;

    border-radius:14px;

    padding:12px 16px;

    display:flex;

    align-items:center;

    gap:12px;

    color:#222;

    font-family:'Hind',sans-serif;

    font-size:20px;

    font-weight:500;

    min-height:72px;

    transition:.35s;

    box-shadow:0 8px 20px rgba(123,47,247,.10);

}

.category-grid div:hover{

    transform:translateY(-6px);

    background:#E6DAFF;

    border-color:#5B21B6;

    box-shadow:
        0 18px 45px rgba(123,47,247,.22);

}

.category-grid i{

    width:40px;

    height:40px;

    border-radius:10px;

    background:#7B2FF7;

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:17px;

    flex-shrink:0;

}

/*=========================================
RIGHT
=========================================*/

.categories-right{

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    gap:28px;

    position:relative;

    animation:fadeRight .9s ease;

}

.categories-right::before{

    content:"";

    position:absolute;

    width:520px;

    height:520px;

    background:#7B2FF7;

    opacity:.12;

    border-radius:50%;

    filter:blur(140px);

    z-index:-1;

}

/*=========================================
VIDEO
=========================================*/

.video-card{

    width:100%;

    max-width:720px;

    height:460px;

    background:#FCFBFF;

    border-radius:28px;

    padding:10px;

    overflow:hidden;

    box-shadow:
        0 0 12px rgba(102,43,196,.35),
        0 20px 55px rgba(97,40,189,.18);

    transition:.35s;

}

.video-card:hover{

    transform:translateY(-8px);

    box-shadow:
        0 0 18px rgba(139,92,246,.30),
        0 25px 60px rgba(123,47,247,.20);

}

.video-card video{

    width:100%;

    height:100%;

    display:block;

    object-fit:contain;

    border-radius:20px;

    background:#000;

}

/*=========================================
BUTTON GROUP
=========================================*/

.categories-buttons{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:18px;

    margin-top:10px;

}

/*=========================================
PRIMARY BUTTON
=========================================*/

.categories-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    text-decoration:none;

    padding:17px 34px;

    border-radius:50px;

    background:linear-gradient(135deg,#7B2FF7,#5B21B6);

    color:#ffffff;

    font-family:'Hind',sans-serif;

    font-size:18px;

    font-weight:600;

    transition:.35s;

}

.categories-btn:hover{

    transform:translateY(-5px);

    box-shadow:0 15px 35px rgba(123,47,247,.35);

}

/*=========================================
SECONDARY BUTTON
=========================================*/

.browse-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    padding:17px 34px;

    border-radius:50px;

    text-decoration:none;

    background:#ffffff;

    color:#7B2FF7;

    border:2px solid #7B2FF7;

    font-family:'Hind',sans-serif;

    font-size:18px;

    font-weight:600;

    transition:.35s;

}

.browse-btn:hover{

    background:#7B2FF7;

    color:#ffffff;

    transform:translateY(-5px);

    box-shadow:0 15px 35px rgba(123,47,247,.25);

}

/*=========================================
ANIMATIONS
=========================================*/

@keyframes fadeLeft{

    from{

        opacity:0;

        transform:translateX(-60px);

    }

    to{

        opacity:1;

        transform:translateX(0);

    }

}

@keyframes fadeRight{

    from{

        opacity:0;

        transform:translateX(60px);

    }

    to{

        opacity:1;

        transform:translateX(0);

    }

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:1100px){

    .categories{

        padding:70px 6%;

    }

    .categories-container{

        grid-template-columns:1fr;

        gap:50px;

    }

    .categories-left{

        text-align:center;

    }

    .categories-left h2{

        margin-left:auto;

        margin-right:auto;

    }

    .categories-left p{

        margin-left:auto;

        margin-right:auto;

    }

    .category-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

@media(max-width:768px){

    .categories{

        padding:60px 5%;

    }

    .categories-left h2{

        font-size:38px;

        line-height:1.3;

    }

    .categories-left p{

        font-size:18px;

        line-height:1.8;

    }

    .category-grid{

        grid-template-columns:1fr;

    }

    .video-card{

        height:320px;

    }

    .categories-buttons{

        flex-direction:column;

        width:100%;

        gap:16px;

    }

    .categories-buttons a{

        width:280px;

        justify-content:center;

    }

}

@media(max-width:480px){

    .categories{

        padding:50px 5%;

    }

    .categories-badge{

        font-size:15px;

        padding:8px 18px;

    }

    .categories-left h2{

        font-size:32px;

    }

    .categories-left p{

        font-size:17px;

    }

    .category-grid div{

        font-size:18px;

        min-height:68px;

        padding:12px;

    }

    .category-grid i{

        width:38px;

        height:38px;

        font-size:16px;

    }

    .video-card{

        height:260px;

    }

    .categories-btn,

    .browse-btn{

        width:100%;

        max-width:280px;

        font-size:17px;

    }

}