/* ==========================================
   HERO SECTION
========================================== */

.hero{

    position:relative;

    padding:40px 0 80px;

}

.hero__wrapper{

    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:60px;

    align-items:center;

    min-height:720px;

    background:#FFFFFF;

    border:var(--border);

    border-radius:40px;

    box-shadow:var(--shadow);

    padding:70px;

    position:relative;

    overflow:hidden;

}

/* ==========================================
   HERO CONTENT
========================================== */

.hero__content{

    display:flex;

    flex-direction:column;

    justify-content:center;

}

/* ==========================================
   HERO BADGE
========================================== */

.hero__badge{

    display:inline-flex;
    align-items:center;

    width:max-content;

    padding:10px 18px;

    background:var(--accent);

    border:var(--border);

    border-radius:999px;

    font-size:14px;
    font-weight:700;

    margin-bottom:24px;

    box-shadow:var(--shadow);

}

/* ==========================================
   HERO TITLE
========================================== */

.hero__title{

    font-size:64px;

    line-height:1.1;

    font-weight:800;

    margin-bottom:28px;

}

.hero__title span{

    display:block;

    color:var(--primary);

}

.hero__description{

    max-width:560px;

    color:var(--gray);

    font-size:18px;

    line-height:1.8;

    margin-bottom:36px;

}

.hero__buttons{

    display:flex;

    gap:18px;

    margin-bottom:48px;

}

.hero__stats{

    display:flex;

    gap:20px;

    flex-wrap:wrap;

}

.hero__stat{

    min-width:120px;

    padding:18px;

    background:#fff;

    border:var(--border);

    border-radius:24px;

    box-shadow:var(--shadow);

}

.hero__stat h3{

    font-size:28px;

    margin-bottom:6px;

    color:var(--primary);

}

.hero__stat span{

    color:var(--gray);

    font-size:15px;

}

/* ==========================================
   SHOWCASE
========================================== */

.hero__showcase{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

}

.hero__image-card{

    width:100%;

    max-width:520px;

    background:#fff;

    border:var(--border);

    border-radius:36px;

    box-shadow:var(--shadow);

    padding:25px;

}

.hero__image-card img{

    width:100%;

    display:block;

    object-fit:contain;

    transition:.4s ease;

    border-radius:36px;

}

.hero__image-card:hover img{

    transform:scale(1.03);

}

.hero__image-card{

    transition:.35s ease;

}

.hero__image-card:hover{

    transform:translateY(-10px);

}

.hero__stat{

    transition:.3s ease;

}

.hero__stat:hover{

    transform:translateY(-8px);

    box-shadow:0 14px 0 var(--dark);

}

.btn{

    transition:.3s ease;

}

.btn:hover{

    transform:translateY(-4px);

}

/* ==========================================
   FLOATING CARD
========================================== */

.floating-card{

    position:absolute;

    background:white;

    border:var(--border);

    border-radius:999px;

    box-shadow:var(--shadow);

    padding:14px 22px;

    font-weight:700;

}

.floating-card--top{

    top:30px;

    right:20px;

}

.floating-card--left{

    left:-20px;

    top:45%;

}

.floating-card--bottom{

    bottom:25px;

    right:40px;

}

.hero__wrapper::before{

    content:"";

    position:absolute;

    width:450px;
    height:450px;

    background:radial-gradient(circle,
    rgba(108,99,255,.18),
    transparent 70%);

    top:-180px;
    left:-150px;

    z-index:0;

}

.hero__wrapper::after{

    content:"";

    position:absolute;

    width:420px;
    height:420px;

    background:radial-gradient(circle,
    rgba(0,194,168,.15),
    transparent 70%);

    bottom:-180px;
    right:-180px;

    z-index:0;

}

.hero__content,
.hero__showcase{

    position:relative;

    z-index:2;

}

@keyframes floating{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-10px);

    }

    100%{

        transform:translateY(0);

    }

}

.floating-card{

    animation:floating 4s ease-in-out infinite;

}

/* ==========================================
   HERO SHOWCASE
========================================== */

.hero__mini-search{

    margin-top:20px;

}

.hero__mini-search input{

    width:100%;

    height:48px;

    border:var(--border);

    border-radius:999px;

    padding:0 18px;

    background:#fff;

    color:#64748b;

}

.hero__games{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:12px;

    margin:20px 0;

}

.hero__games img{

    width:64px;

    height:64px;

    object-fit:contain;

    border-radius:18px;

    border:2px solid #ddd;

    transition:.3s;

    cursor:pointer;

}

.hero__games img:hover{

    transform:translateY(-6px) scale(1.05);

    border-color:var(--primary);

}

.hero__cta{

    width:100%;

    height:56px;

    border:none;

    border-radius:999px;

    background:var(--accent);

    color:var(--dark);

    font-weight:700;

    cursor:pointer;

    box-shadow:var(--shadow);

    transition:.3s;

}

.hero__cta:hover{

    transform:translateY(-4px);

}