.legal-body{background:var(--bg)}
.legal-top{border-bottom:1px solid var(--line);background:color-mix(in srgb,#fff 70%, var(--bg))}
.legal-nav{display:flex;align-items:center;justify-content:space-between;padding-block:16px}
.logo.dark,.navr .login.dark{color:var(--fg)}
.navr .login.dark{text-decoration:none}
.legal-main{padding-block:clamp(40px,7vw,72px) 64px}
.legal-hero{display:grid;gap:14px;margin-bottom:36px;max-width:720px}
.legal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.legal-card{
  display:grid;gap:8px;padding:22px 20px;border:1px solid var(--line);border-radius:14px;
  background:var(--card);text-decoration:none;transition:border-color .2s ease, transform .2s ease;
}
.legal-card strong{font-family:var(--font-d);font-size:1.15rem}
.legal-card span{color:var(--muted);font-size:.95rem}
.legal-card:hover{border-color:color-mix(in srgb,var(--accent) 45%, var(--line));transform:translateY(-2px)}
.legal-doc{max-width:760px}
.legal-doc h1{margin-bottom:8px}
.legal-meta{color:var(--muted);font-size:.92rem;margin-bottom:28px}
.legal-body-text{display:grid;gap:14px;color:var(--fg)}
.legal-body-text h2{font-size:1.2rem;margin-top:12px}
.legal-body-text p,.legal-body-text li{color:var(--muted);line-height:1.7}
.legal-body-text ul{margin:0;padding-left:1.2rem;display:grid;gap:8px}
.legal-body-text a{color:var(--accent);font-weight:600}
.legal-strip{
  margin:0 auto 28px;width:min(100% - 32px,var(--wrap));
  max-width:100%;box-sizing:border-box;
  padding:22px 20px;border:1px solid var(--line);border-radius:16px;
  background:linear-gradient(120deg, color-mix(in srgb,var(--accent) 7%, #fff), #fff);
  display:grid;gap:10px;
}
.legal-strip h3{font-size:1.15rem}
.legal-strip p{color:var(--muted);max-width:70ch}
.legal-strip .links{display:flex;flex-wrap:wrap;gap:10px 16px;font-size:.92rem}
.legal-strip .links a{color:var(--accent);font-weight:600;text-decoration:none}
.site-foot .wrap{gap:10px 18px}
@media(max-width:720px){.legal-grid{grid-template-columns:1fr}}

.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:28px}
.contact-card{
  display:grid;gap:6px;padding:22px 20px;border:1px solid var(--line);border-radius:14px;
  background:var(--card);text-decoration:none;color:inherit;transition:border-color .2s ease, transform .2s ease;
}
.contact-card.static{cursor:default}
.contact-card:not(.static):hover{border-color:color-mix(in srgb,var(--accent) 45%, var(--line));transform:translateY(-2px)}
.contact-label{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:700}
.contact-card strong{font-family:var(--font-d);font-size:1.12rem;line-height:1.35}
.contact-card > span:not(.contact-label):not(.contact-tax){color:var(--muted);font-size:.95rem}
.contact-tax{color:var(--muted);font-size:.88rem}
.contact-note{margin-inline:0;width:100%}
@media(max-width:720px){.contact-grid{grid-template-columns:1fr}}
