
/* BSG Rechtliche Seiten – eigenständiges Layout */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body.legalbody{
    min-height:100vh;
    background:#f4f7f5;
    color:#172019;
    font-family:Arial,Helvetica,sans-serif;
}

.legal-shell{
    width:min(980px,calc(100% - 32px));
    margin:0 auto;
    padding:34px 0 44px;
}

.legal-topbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:22px;
}

.legal-logo{
    display:flex;
    align-items:center;
    text-decoration:none;
}
.legal-logo img{
    display:block;
    width:auto !important;
    height:auto !important;
    max-width:210px !important;
    max-height:82px !important;
    object-fit:contain !important;
}

.legal-back{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 17px;
    border-radius:11px;
    background:#e7f3ea;
    color:#087a2d;
    text-decoration:none;
    font-size:14px;
    font-weight:800;
    white-space:nowrap;
}
.legal-back:hover{background:#dcefe1}

.legal-card{
    background:#fff;
    border:1px solid #dbe4dd;
    border-radius:18px;
    padding:38px 42px;
    box-shadow:0 12px 34px rgba(20,45,28,.07);
}

.legal-internal{
    margin:0 0 32px;
    padding:18px 20px;
    background:#edf7f0;
    border:1px solid #bdddc5;
    border-left:5px solid #078536;
    border-radius:12px;
}
.legal-internal strong{
    display:block;
    color:#087a2d;
    font-size:15px;
    margin-bottom:6px;
}
.legal-internal p{
    margin:0;
    color:#334039;
    line-height:1.65;
}

.legal-card h1{
    margin:0 0 8px;
    font-size:34px;
    line-height:1.15;
}
.legal-card .legal-subline{
    margin:0 0 28px;
    color:#718077;
    font-size:13px;
}
.legal-card h2{
    margin:30px 0 10px;
    padding-top:4px;
    font-size:19px;
    line-height:1.3;
}
.legal-card p{
    margin:0 0 12px;
    line-height:1.72;
    color:#2e3932;
}
.legal-card ul{
    margin:10px 0 18px;
    padding-left:22px;
}
.legal-card li{
    margin:7px 0;
    line-height:1.6;
}

.legal-data-block{
    margin:12px 0 6px;
    padding:16px 18px;
    border:1px solid #e0e7e2;
    border-radius:12px;
    background:#fafcfa;
    line-height:1.7;
}

.legal-warning{
    margin-top:34px;
    padding:17px 19px;
    border:1px solid #ecdca9;
    border-radius:12px;
    background:#fff9e9;
    color:#5d512f;
    line-height:1.6;
}
.legal-warning strong{display:block;margin-bottom:4px}

.legal-footer{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:9px;
    padding:22px 0 0;
    font-size:12px;
    color:#89938c;
}
.legal-footer a{
    color:#087a2d;
    text-decoration:none;
    font-weight:800;
}
.legal-footer a:hover{text-decoration:underline}

@media(max-width:700px){
    .legal-shell{
        width:min(100% - 20px,980px);
        padding-top:16px;
    }
    .legal-topbar{
        align-items:flex-start;
    }
    .legal-logo img{
        max-width:155px !important;
        max-height:62px !important;
    }
    .legal-back{
        min-height:40px;
        padding:0 13px;
        font-size:13px;
    }
    .legal-card{
        padding:24px 20px;
        border-radius:14px;
    }
    .legal-card h1{
        font-size:28px;
    }
}
