/* =========================================================
   ZETWIJS LEGAL PAGES
   Isolated legal styling
   ========================================================= */

.zw-legal-shell{
    width:min(860px,calc(100% - 32px));
    margin:0 auto;
    padding:40px 0 24px;
    height:auto;
    min-height:0;
    overflow:visible;
}

.zw-legal-header{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-bottom:26px;
}

.zw-legal-logo{
    width:58px;
    height:auto;
    display:block;
}

.zw-legal-card{
    background:var(--surface-panel);
    border:1px solid var(--border-subtle);
    border-radius:18px;
    padding:clamp(24px,5vw,48px);
    color:var(--jura-body);
    height:auto;
    min-height:0;
    overflow:visible;
}

.zw-legal-card h1{
    margin:0 0 10px;
    font-family:"Orbitron",sans-serif;
    font-weight:300;
    font-size:clamp(26px,4vw,36px);
    line-height:1.2;
    letter-spacing:var(--zw-orbitron-spacing);
    color:var(--text-orbitron);
}

.zw-legal-card h2{
    margin:28px 0 10px;
    font-family:"Orbitron",sans-serif;
    font-weight:300;
    font-size:18px;
    line-height:1.3;
    letter-spacing:var(--zw-orbitron-spacing);
    color:var(--text-orbitron);
}

.zw-legal-kicker{
    font-family:"Orbitron",sans-serif;
    font-weight:400;
    font-size:10px;
    letter-spacing:.16em;
    color:var(--accent-brand);
    margin-bottom:12px;
}

.zw-legal-updated{
    font-family:"Jura",sans-serif;
    color:var(--jura-muted);
    font-size:12px;
    margin-bottom:28px;
}

.zw-legal-card p,
.zw-legal-card li,
.zw-legal-card dt,
.zw-legal-card dd{
    font-family:"Jura",sans-serif;
    font-size:15px;
    color:var(--jura-body);
    line-height:1.7;
}

.zw-legal-data{
    display:grid;
    grid-template-columns:auto 1fr;
    gap:8px 24px;
    font-family:"Jura",sans-serif;
}

.zw-legal-data dt{
    color:var(--jura-muted);
}

.zw-legal-data dd{
    margin:0;
    color:var(--jura-body);
}

.zw-legal-note{
    padding:14px 16px;
    border-left:2px solid var(--accent-brand);
    background:var(--surface-quote);
}

.zw-legal-footer{
    width:min(860px,calc(100% - 32px));
    margin:34px auto 20px;
    text-align:center;
    height:auto;
    overflow:visible;
}

.zw-legal-footer-mark{
    color:var(--text-disabled);
    font-size:11px;
    letter-spacing:.075em;
    text-transform:uppercase;
    margin-bottom:12px;
    margin-top: -10px;

}

.zw-legal-footer-line{
    height:1px;
    background:var(--border-subtle);
    margin:16px 0;
}

.zw-legal-links{
    display:flex;
    justify-content:center;
    gap:8px 16px;
    flex-wrap:wrap;
}

.zw-legal-links a,
.zw-legal-links a:visited,
.zw-legal-back,
.zw-legal-back:visited{
    color:var(--jura-muted);
    text-decoration:none;
    font-family:"Jura",sans-serif;
    font-size:12px;
}

.zw-legal-links a:hover,
.zw-legal-links a:focus-visible,
.zw-legal-back:hover,
.zw-legal-back:focus-visible{
    color:var(--accent-brand);
    text-decoration:none;
}

.zw-legal-card a,
.zw-legal-card a:visited{
    color:var(--accent-brand);
    text-decoration:none;
}

.zw-legal-card a:hover,
.zw-legal-card a:focus-visible{
    color:var(--accent-brand);
    text-decoration:underline;
}


/* Legal header reuses the Zetwijs login brand component */
.zw-legal-brand{
    margin:0;
    flex-shrink:0;
    text-decoration:none;
}

/* Legal brand link: prevent browser visited-link purple */
.zw-legal-brand,
.zw-legal-brand:visited,
.zw-legal-brand:hover,
.zw-legal-brand:active{
    color:inherit;
    text-decoration:none;
}
/* Legal footer: no separator line */
.zw-legal-footer-line{
    display:none;
}
.zw-legal-footer{
    border-top:none;
}