/*
 * KSG Leagues public information + legal center
 * Uses the shared .section-shell for horizontal alignment.
 */

.info-hero,
.legal-hero{
    position:relative;
    overflow:hidden;
    isolation:isolate;
}
.info-hero::after,
.legal-hero::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    pointer-events:none;
    opacity:.2;
}
.info-hero-team::after{
    background:
        radial-gradient(circle at 18% 28%,transparent 0 28px,rgba(255,255,255,.45) 29px 31px,transparent 32px),
        linear-gradient(35deg,transparent 45%,rgba(255,255,255,.24) 46% 48%,transparent 49%);
    background-size:180px 180px,130px 130px;
}
.info-hero-work::after{
    background:
        repeating-linear-gradient(120deg,transparent 0 28px,rgba(255,255,255,.22) 29px 31px,transparent 32px 62px);
}
.info-hero-partnership::after{
    background:
        linear-gradient(90deg,transparent 47%,rgba(255,255,255,.25) 48% 52%,transparent 53%),
        linear-gradient(0deg,transparent 47%,rgba(255,255,255,.25) 48% 52%,transparent 53%);
    background-size:95px 95px;
    transform:rotate(8deg) scale(1.15);
}
.info-hero-community::after{
    background:
        radial-gradient(circle,rgba(255,255,255,.28) 0 2px,transparent 3px);
    background-size:32px 32px;
}
.legal-hero-terms::after{
    background:
        linear-gradient(120deg,transparent 0 46%,rgba(255,255,255,.24) 47% 48%,transparent 49% 100%),
        linear-gradient(60deg,transparent 0 46%,rgba(255,255,255,.18) 47% 48%,transparent 49% 100%);
    background-size:120px 120px;
}
.legal-hero-privacy::after{
    background:
        radial-gradient(circle at center,transparent 0 24px,rgba(255,255,255,.24) 25px 27px,transparent 28px);
    background-size:100px 100px;
}
.legal-hero-cookies::after{
    background:
        radial-gradient(circle,rgba(255,255,255,.25) 0 5px,transparent 6px),
        radial-gradient(circle,rgba(255,255,255,.13) 0 2px,transparent 3px);
    background-position:0 0,18px 18px;
    background-size:58px 58px,58px 58px;
}

.info-shell{
    padding-top:68px;
    padding-bottom:78px;
}
.info-lead{
    max-width:900px;
    margin-bottom:34px;
}
.info-lead h2{
    margin:7px 0 12px;
    font:800 clamp(38px,5vw,62px)/.94 'Barlow Condensed',sans-serif;
    text-transform:uppercase;
}
.info-lead p{
    max-width:820px;
    margin:0;
    color:var(--muted);
    font-size:17px;
    line-height:1.7;
}
.info-card-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1px;
    background:var(--line);
    border:1px solid var(--line);
}
.info-card{
    min-height:260px;
    padding:28px 24px;
    background:#fff;
}
.info-card>span{
    display:inline-flex;
    min-width:40px;
    min-height:32px;
    align-items:center;
    justify-content:center;
    margin-bottom:34px;
    padding:4px 8px;
    background:var(--violet);
    color:#fff;
    font:800 12px 'Barlow Condensed',sans-serif;
    letter-spacing:.05em;
}
.info-card h3{
    margin:0 0 10px;
    font:800 27px/1 'Barlow Condensed',sans-serif;
    text-transform:uppercase;
}
.info-card p{
    margin:0;
    color:var(--muted);
    font-size:14px;
    line-height:1.65;
}
.info-detail-band{
    display:grid;
    grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
    gap:50px;
    margin:42px 0;
    padding:38px 40px;
    background:var(--violet);
    color:#fff;
}
.info-detail-band h2{
    margin:8px 0 0;
    font:800 clamp(34px,4vw,52px)/.96 'Barlow Condensed',sans-serif;
    text-transform:uppercase;
}
.info-detail-band p{
    margin:0 0 14px;
    color:#d7d3e0;
    line-height:1.72;
}
.info-detail-band p:last-child{margin-bottom:0}
.info-process{
    padding:16px 0 44px;
}
.info-process-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    margin-top:15px;
}
.info-process-grid article{
    padding:24px 24px 24px 0;
    border-top:3px solid var(--violet);
}
.info-process-grid article+article{
    padding-left:24px;
}
.info-process-grid b{
    color:var(--red);
    font:800 22px 'Barlow Condensed',sans-serif;
}
.info-process-grid h3{
    margin:10px 0 7px;
    font:800 24px 'Barlow Condensed',sans-serif;
    text-transform:uppercase;
}
.info-process-grid p{
    margin:0;
    color:var(--muted);
    font-size:14px;
    line-height:1.6;
}
.info-cta{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:34px;
    padding:36px 40px;
    background:var(--off);
    border-left:5px solid var(--red);
}
.info-cta h2{
    margin:6px 0 7px;
    font:800 clamp(32px,4vw,48px)/.96 'Barlow Condensed',sans-serif;
    text-transform:uppercase;
}
.info-cta p{
    margin:0;
    max-width:750px;
    color:var(--muted);
}
.info-cta-actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:10px;
}

.legal-shell{
    display:grid;
    grid-template-columns:240px minmax(0,1fr);
    gap:58px;
    padding-top:58px;
    padding-bottom:88px;
    align-items:start;
}
.legal-rail{
    position:sticky;
    top:92px;
    display:flex;
    flex-direction:column;
    gap:0;
    border-top:4px solid var(--red);
    background:var(--off);
}
.legal-rail .eyebrow{
    padding:18px 18px 10px;
}
.legal-rail a{
    padding:12px 18px;
    border-top:1px solid var(--line);
    color:var(--violet);
    font:800 13px 'Barlow Condensed',sans-serif;
    text-transform:uppercase;
    letter-spacing:.03em;
}
.legal-rail a.active,
.legal-rail a:hover{
    background:var(--violet);
    color:#fff;
}
.legal-rail p{
    margin:0;
    padding:16px 18px;
    border-top:1px solid var(--line);
    color:var(--muted);
    font-size:11px;
    line-height:1.5;
}
.legal-copy{
    max-width:920px;
}
.legal-copy h2{
    margin:44px 0 12px;
    padding-top:2px;
    font:800 clamp(29px,3.2vw,40px)/1 'Barlow Condensed',sans-serif;
    text-transform:uppercase;
}
.legal-copy h3{
    margin:25px 0 7px;
    font:800 22px/1.05 'Barlow Condensed',sans-serif;
    text-transform:uppercase;
}
.legal-copy p,
.legal-copy li{
    color:#484553;
    font-size:15px;
    line-height:1.78;
}
.legal-copy p{
    margin:0 0 14px;
}
.legal-copy ul{
    margin:8px 0 20px;
    padding-left:22px;
}
.legal-copy li+li{
    margin-top:7px;
}
.legal-intro{
    padding:26px 28px;
    background:var(--off);
    border-left:5px solid var(--red);
}
.legal-intro strong{
    display:block;
    margin-bottom:7px;
    color:var(--violet);
    font:800 24px 'Barlow Condensed',sans-serif;
    text-transform:uppercase;
}
.legal-intro p{margin:0}
.legal-risk{
    margin:44px 0;
    padding:32px 34px;
    background:var(--violet);
    border-top:6px solid var(--red);
}
.legal-risk .eyebrow{color:#fff}
.legal-risk h2{
    margin:8px 0 16px;
    color:#fff;
}
.legal-risk p{
    color:#ddd9e5;
}
.legal-risk strong{
    color:#fff;
}

.legal-agreement-note{
    grid-column:1/-1;
    margin-top:-2px;
    padding:12px 14px;
    background:var(--off);
    border-left:4px solid var(--red);
    color:var(--muted);
    font-size:12px;
    line-height:1.55;
}
.legal-agreement-note a{
    color:var(--red);
    font-weight:800;
}

@media(max-width:980px){
    .info-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .info-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
    .info-process-grid article,
    .info-process-grid article+article{padding:20px 0}
    .legal-shell{grid-template-columns:1fr;gap:32px}
    .legal-rail{position:static;display:grid;grid-template-columns:repeat(3,1fr)}
    .legal-rail .eyebrow,.legal-rail p{grid-column:1/-1}
}
@media(max-width:720px){
    .info-shell{padding-top:44px;padding-bottom:58px}
    .info-card-grid,.info-process-grid{grid-template-columns:1fr}
    .info-card{min-height:0}
    .info-detail-band,.info-cta{grid-template-columns:1fr;padding:28px 24px}
    .info-detail-band{gap:22px}
    .info-cta-actions{justify-content:flex-start}
    .legal-shell{padding-top:34px;padding-bottom:60px}
    .legal-rail{grid-template-columns:1fr}
    .legal-rail .eyebrow,.legal-rail p{grid-column:auto}
    .legal-copy h2{margin-top:36px}
    .legal-intro,.legal-risk{padding:24px 20px}
}
