/* ==========================================
   CONTRACT
========================================== */

.contract{
    position:relative;
    padding:90px 0;
    background:linear-gradient(180deg,#090909 0%,#050505 100%);
    overflow:hidden;
}

.contract::before{
    content:"";
    position:absolute;
    width:650px;
    height:650px;
    right:-220px;
    top:-220px;
    border-radius:50%;
    background:rgba(212,175,55,.06);
    filter:blur(140px);
}

.contract-card{
    position:relative;
    max-width:820px;
    margin:auto;
    padding:45px;
    border-radius:22px;
    background:rgba(255,255,255,.05);
    backdrop-filter:blur(18px);
    border:1px solid rgba(255,255,255,.08);
    overflow:hidden;
    box-shadow:0 18px 45px rgba(0,0,0,.4);
}

.contract-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:
    linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,.04),
        transparent
    );
    transform:translateX(-100%);
}

.contract-card.shine::before{
    animation:cardShine 1.2s ease;
}

.contract-card p{
    color:var(--gold);
    letter-spacing:2px;
    text-transform:uppercase;
    font-size:.8rem;
    margin-bottom:10px;
}

.contract-card h2{
    font-family:var(--heading);
    font-size:3rem;
    color:#fff;
    margin-bottom:28px;
}

.contract-box{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    background:#111;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    padding:18px;
    margin-bottom:28px;
}

.contract-box span{
    color:#fff;
    font-size:.95rem;
    word-break:break-all;
}

.contract-box button{
    min-width:120px;
    padding:13px 22px;
    border:none;
    border-radius:999px;
    cursor:pointer;
    font-weight:700;
    background:var(--gold-gradient);
    color:#111;
    transition:.3s;
}

.contract-box button:hover{
    transform:translateY(-2px);
}

.contract-box button.copied{
    background:#22c55e;
    color:#fff;
    box-shadow:0 0 20px rgba(34,197,94,.35);
}

.contract-buttons{
    display:flex;
    justify-content:center;
    gap:16px;
    flex-wrap:wrap;
}

@keyframes cardShine{
    0%{
        transform:translateX(-120%);
    }
    100%{
        transform:translateX(120%);
    }
}