/* Документные страницы: оферта, политика, оплата и возврат */
:root {
    --ink: #0a0a0a;
    --paper: #ffffff;
    --g-700: #2e2e2e;
    --g-500: #6e6e6e;
    --g-400: #9a9a9a;
    --g-200: #e6e6e6;
    --g-100: #f3f3f3;
    --display: 'Bricolage Grotesque', sans-serif;
    --body: 'Hanken Grotesk', sans-serif;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
body {
    font-family: var(--body); background: var(--paper); color: var(--ink);
    line-height: 1.65; -webkit-font-smoothing: antialiased;
}

.legal-nav {
    display: flex; align-items: center; justify-content: space-between;
    padding: 20px clamp(20px, 5vw, 64px); border-bottom: 1px solid var(--g-200);
    position: sticky; top: 0; background: var(--paper); z-index: 10;
}
.legal-nav .brand {
    font-family: var(--display); font-weight: 700; font-size: 19px;
    color: var(--ink); text-decoration: none; letter-spacing: -.02em;
    display: inline-flex; align-items: center; gap: 9px;
}
.legal-nav .brand .mark { width: 12px; height: 12px; background: var(--ink); border-radius: 3px; }
.legal-nav .back { color: var(--g-500); text-decoration: none; font-size: 15px; font-weight: 500; }
.legal-nav .back:hover { color: var(--ink); }

.legal {
    max-width: 820px; margin: 0 auto; padding: clamp(36px, 6vw, 72px) clamp(20px, 5vw, 40px) 90px;
}
.legal h1 {
    font-family: var(--display); font-weight: 700; font-size: clamp(1.7rem, 4vw, 2.4rem);
    letter-spacing: -.02em; margin-bottom: 8px;
}
.legal .updated { color: var(--g-400); font-size: 14px; margin-bottom: 36px; }
.legal h2 {
    font-family: var(--display); font-weight: 600; font-size: 1.25rem;
    margin: 34px 0 12px; letter-spacing: -.01em;
}
.legal h3 { font-size: 1.02rem; font-weight: 600; margin: 22px 0 8px; }
.legal p { margin: 10px 0; color: var(--g-700); }
.legal ul, .legal ol { margin: 10px 0 10px 22px; color: var(--g-700); }
.legal li { margin: 6px 0; }
.legal a { color: var(--ink); text-decoration: underline; text-underline-offset: 2px; }
.legal .lead { font-size: 1.05rem; color: var(--g-500); }

.requisites {
    margin-top: 40px; padding: 22px 24px; background: var(--g-100);
    border-radius: 14px; font-size: 15px;
}
.requisites h2 { margin-top: 0; }
.requisites dl { display: grid; grid-template-columns: max-content 1fr; gap: 6px 18px; margin-top: 12px; }
.requisites dt { color: var(--g-500); }
.requisites dd { color: var(--ink); font-weight: 500; }

.legal-foot {
    border-top: 1px solid var(--g-200); padding: 28px clamp(20px, 5vw, 64px);
    color: var(--g-400); font-size: 13px; text-align: center;
}
@media (max-width: 560px) {
    .requisites dl { grid-template-columns: 1fr; gap: 2px 0; }
    .requisites dd { margin-bottom: 10px; }
}
