/* ================= PARTNERS PAGE ================= */

.partners-page{
    width:min(1200px,92%);
    margin:0 auto;
}

.partners-hero{
    min-height:470px;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    align-items:center;
    gap:60px;
    padding:70px 0 60px;
}

.partners-tag{
    display:inline-block;
    margin-bottom:18px;
    color:var(--cyan);
    font-weight:800;
    letter-spacing:2px;
}

.partners-hero h1{
    max-width:760px;
    font-size:4.2rem;
    line-height:1.05;
    margin-bottom:24px;
}

.partners-hero p{
    max-width:680px;
    color:var(--muted);
    font-size:1.25rem;
    margin-bottom:30px;
}

.partners-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:15px 28px;
    border-radius:999px;
    background:linear-gradient(90deg,#7c5cff,#35d1d8);
    color:#fff;
    font-weight:800;
    transition:.25s;
}

.partners-button:hover{
    transform:translateY(-3px);
    box-shadow:0 15px 35px rgba(0,0,0,.25);
}

.partners-dragon{
    display:flex;
    justify-content:center;
}

.partners-dragon img{
    width:330px;
    filter:drop-shadow(0 0 45px rgba(120,90,255,.55));
    animation:partnersFloat 4s ease-in-out infinite;
}

@keyframes partnersFloat{
    0%,100%{transform:translateY(0);}
    50%{transform:translateY(-12px);}
}


/* ================= VIDEO ================= */

.partners-video{
    margin:20px 0 100px;
}

.partners-section-heading{
    margin-bottom:30px;
}

.partners-section-heading > span{
    color:var(--cyan);
    font-size:.85rem;
    font-weight:800;
    letter-spacing:2px;
}

.partners-section-heading h2{
    margin-top:8px;
    font-size:2.4rem;
}

.partners-video-frame{
    width:min(950px,100%);
    aspect-ratio:16 / 9;
    margin:0 auto;
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:24px;
    background:#000;
    box-shadow:0 25px 70px rgba(0,0,0,.25);
}

.partners-video-frame iframe{
    width:100%;
    height:100%;
    display:block;
    border:0;
}


/* ================= SECTIONS ================= */

.partners-section{
    margin:90px 0;
}

.partners-about{
    max-width:900px;
    padding:35px;
    border:1px solid var(--border);
    border-radius:24px;
    background:rgba(255,255,255,.05);
}

.partners-about p{
    color:var(--muted);
    font-size:1.1rem;
    line-height:1.8;
}

.partners-about p + p{
    margin-top:18px;
}


/* ================= WHAT I COVER ================= */

.partners-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

.partner-card{
    padding:30px;
    border:1px solid var(--border);
    border-radius:24px;
    background:rgba(255,255,255,.05);
    transition:.3s;
}

.partner-card:hover{
    transform:translateY(-5px);
    border-color:rgba(139,92,246,.35);
    box-shadow:0 20px 50px rgba(0,0,0,.25);
}

.partner-icon{
    width:64px;
    height:64px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px;
    border-radius:18px;
    background:rgba(139,92,246,.12);
    border:1px solid rgba(139,92,246,.2);
    font-size:2rem;
}

.partner-card h3{
    margin-bottom:10px;
    font-size:1.3rem;
}

.partner-card p{
    color:var(--muted);
    line-height:1.7;
}


/* ================= COLLABORATIONS ================= */

.collab-list{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
}

.collab-item{
    display:flex;
    gap:20px;
    align-items:flex-start;
    padding:25px;
    border:1px solid var(--border);
    border-radius:20px;
    background:rgba(255,255,255,.035);
}

.collab-item > span{
    font-size:1.8rem;
    line-height:1;
}

.collab-item h3{
    margin-bottom:6px;
}

.collab-item p{
    color:var(--muted);
}


/* ================= CONTACT ================= */

.partners-contact{
    margin:100px 0 50px;
    padding:60px 30px;
    text-align:center;
    border:1px solid var(--border);
    border-radius:28px;
    background:rgba(255,255,255,.05);
}

.partners-contact h2{
    font-size:2.8rem;
    margin-bottom:15px;
}

.partners-contact p{
    max-width:650px;
    margin:0 auto 25px;
    color:var(--muted);
    font-size:1.1rem;
}


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

@media(max-width:768px){

    .partners-page{
        width:min(92%,560px);
    }

    .partners-hero{
        min-height:auto;
        grid-template-columns:1fr;
        text-align:center;
        gap:30px;
        padding:50px 0 30px;
    }

    .partners-hero h1{
        font-size:2.8rem;
    }

    .partners-hero p{
        font-size:1.05rem;
    }

    .partners-dragon{
        order:-1;
    }

    .partners-dragon img{
        width:220px;
    }

    .partners-video{
        margin:45px 0 70px;
    }

    .partners-section{
        margin:65px 0;
    }

    .partners-section-heading h2{
        font-size:2rem;
    }

    .partners-video-frame{
        border-radius:18px;
    }

    .partners-grid{
        grid-template-columns:1fr;
    }

    .collab-list{
        grid-template-columns:1fr;
    }

    .partners-contact{
        margin:70px 0 35px;
        padding:45px 22px;
    }

    .partners-contact h2{
        font-size:2.3rem;
    }
}
