body.legal-page{
    margin:0;
    background:linear-gradient(180deg,#f9f8f5 0%,#f3f8f3 100%);
    color:#21242c;
    font-family:"Inter",Arial,sans-serif;
}

.legal-shell{
    max-width:1040px;
    margin:0 auto;
    padding:24px 16px 48px;
}

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

.legal-brand{
    display:inline-flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    color:#21242c;
    font-weight:800;
    font-size:24px;
    letter-spacing:-0.02em;
}

.legal-brand__dot{
    width:12px;
    height:12px;
    border-radius:999px;
    background:#229652;
    box-shadow:0 0 0 6px rgba(34,150,82,.12);
}

.legal-nav{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.legal-nav a{
    text-decoration:none;
    color:#35513c;
    background:#ffffff;
    border:1px solid #d7e4d9;
    border-radius:999px;
    padding:10px 14px;
    font-size:14px;
    font-weight:600;
}

.legal-nav a.is-active{
    background:#229652;
    border-color:#229652;
    color:#ffffff;
}

.legal-hero{
    background:radial-gradient(circle at top left,#ffffff 0%,#f7fbf7 55%,#eef7ef 100%);
    border:1px solid #dfe8e0;
    border-radius:24px;
    padding:28px;
    box-shadow:0 14px 40px rgba(34,150,82,.08);
    margin-bottom:20px;
}

.legal-eyebrow{
    display:inline-block;
    margin:0 0 12px;
    padding:6px 10px;
    border-radius:999px;
    background:#e9f6ed;
    color:#1c7d44;
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.legal-hero h1{
    margin:0 0 12px;
    font-size:40px;
    line-height:1.05;
    letter-spacing:-0.03em;
}

.legal-hero p{
    margin:0;
    max-width:760px;
    font-size:17px;
    line-height:1.65;
    color:#475467;
}

.legal-alert{
    margin:18px 0 0;
    padding:14px 16px;
    border-left:4px solid #f0d775;
    border-radius:12px;
    background:#fff8db;
    color:#5d4a00;
    font-size:14px;
    line-height:1.6;
}

.legal-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
}

.legal-card{
    background:#ffffff;
    border:1px solid #e2e8e3;
    border-radius:20px;
    padding:24px;
    box-shadow:0 8px 24px rgba(16,24,40,.05);
}

.legal-card--full{
    grid-column:1 / -1;
}

.legal-card h2{
    margin:0 0 14px;
    font-size:24px;
    line-height:1.2;
}

.legal-card h3{
    margin:18px 0 8px;
    font-size:18px;
    line-height:1.35;
}

.legal-card p,
.legal-card li{
    font-size:15px;
    line-height:1.75;
    color:#344054;
}

.legal-card p{
    margin:0 0 12px;
}

.legal-card ul,
.legal-card ol{
    margin:0 0 14px 20px;
    padding:0;
}

.legal-card strong{
    color:#101828;
}

.legal-card a{
    color:#1c7d44;
}

.legal-meta{
    display:grid;
    gap:12px;
}

.legal-meta__item{
    padding:14px 16px;
    border-radius:14px;
    background:#f7faf7;
    border:1px solid #e2ebe3;
}

.legal-meta__item span{
    display:block;
    margin-bottom:6px;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:#6b7280;
}

.legal-footer{
    margin-top:22px;
    padding-top:18px;
    border-top:1px solid #dfe8e0;
    display:flex;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
    font-size:14px;
    color:#667085;
}

.legal-footer a{
    color:#1c7d44;
    text-decoration:none;
    font-weight:600;
}

@media (max-width: 767px){
    .legal-topbar{
        flex-direction:column;
        align-items:flex-start;
    }

    .legal-hero{
        padding:22px;
    }

    .legal-hero h1{
        font-size:32px;
    }

    .legal-grid{
        grid-template-columns:1fr;
    }
}
