
/* Legal pages isolated styling */
body.public-legal-page{
    min-height:100vh;
}

.public-legal-shell{
    width:min(1180px,calc(100% - 32px));
    margin:0 auto;
    padding:150px 0 80px;
    position:relative;
    z-index:2;
}

.public-legal-hero{
    text-align:center;
    margin-bottom:48px;
}

.public-legal-logo{
    width:180px;
    max-width:42vw;
    border-radius:50%;
    box-shadow:0 0 30px rgba(255,60,210,.45);
    margin-bottom:24px;
}

.public-legal-eyebrow{
    color:#ffd84d;
    font-weight:900;
    letter-spacing:.35em;
    text-transform:uppercase;
    margin-bottom:18px;
    text-shadow:0 0 14px rgba(255,216,77,.5);
}

.public-legal-title{
    font-size:clamp(3.6rem,8vw,7rem);
    line-height:.9;
    margin:0;
    color:#fff;
    text-transform:uppercase;
    text-shadow:0 0 24px rgba(255,255,255,.28);
}

.public-legal-subtitle{
    max-width:780px;
    margin:24px auto 0;
    font-size:1.25rem;
    line-height:1.45;
    color:#f3e9ff;
    font-weight:700;
}

.public-legal-card{
    background:linear-gradient(180deg,rgba(53,0,73,.88),rgba(22,0,33,.94));
    border:1px solid rgba(255,80,220,.28);
    border-radius:34px;
    padding:42px;
    box-shadow:0 18px 48px rgba(0,0,0,.35);
}

.public-legal-updated{
    display:inline-block;
    margin-bottom:26px;
    padding:10px 16px;
    border-radius:999px;
    background:rgba(255,216,77,.12);
    border:1px solid rgba(255,216,77,.3);
    color:#ffe57f;
    font-weight:800;
}

.public-legal-card h2{
    color:#ffd84d;
    margin:34px 0 14px;
    font-size:2rem;
}

.public-legal-card h2:first-of-type{
    margin-top:0;
}

.public-legal-card p,
.public-legal-card li{
    color:#f5edff;
    line-height:1.75;
    font-size:1.04rem;
}

.public-legal-card ul{
    padding-left:22px;
}

@media (max-width: 768px){
    .public-legal-shell{
        padding-top:120px;
    }

    .public-legal-card{
        padding:28px 22px;
        border-radius:24px;
    }

    .public-legal-title{
        font-size:clamp(3rem,14vw,5rem);
    }
}
