@font-face { font-family: "Korzina Display"; src: url("../assets/fonts/korzina-display-regular.woff2") format("woff2"); font-display: swap; }
@font-face { font-family: "Korzina Display"; src: url("../assets/fonts/korzina-display-bold.woff2") format("woff2"); font-weight: 700; font-display: swap; }
:root { color-scheme: light; --paper: #fff3df; --ink: #2d2d2d; --muted: #6c675e; --forest: #31543b; --line: rgba(45,45,45,.14); }
* { box-sizing: border-box; }
html { scrollbar-width: none; }
html::-webkit-scrollbar { width: 0; height: 0; }
html, body { margin: 0; background: #1d1d1c; }
body { min-height: 100vh; color: var(--ink); font-family: "Korzina Display", "Arial Narrow", Arial, sans-serif; line-height: 1.55; }
a { color: var(--forest); }
.document-page { width: min(100%, 760px); min-height: 100vh; margin: 0 auto; padding: max(20px, env(safe-area-inset-top)) 20px max(40px, env(safe-area-inset-bottom)); background: var(--paper); }
.document-header { display: flex; align-items: center; gap: 14px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.document-header img { width: 44px; height: 44px; }
.document-header div { min-width: 0; }
.document-header p, .document-header h1 { margin: 0; }
.document-header p { color: var(--muted); font-size: 12px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
.document-header h1 { font-size: clamp(28px, 8vw, 46px); line-height: .98; }
.back-link { display: inline-flex; margin: 18px 0 8px; font-weight: 700; text-decoration: none; }
.document-meta, .legal-note { margin: 14px 0; padding: 12px 14px; border: 1px solid var(--line); border-radius: 14px; color: var(--muted); background: rgba(255,255,255,.38); font-size: 14px; }
.document-content h2 { margin: 30px 0 10px; font-size: 23px; line-height: 1.15; }
.document-content h3 { margin: 22px 0 8px; font-size: 18px; line-height: 1.2; }
.document-content p, .document-content ul, .document-content ol, .document-content dl { margin: 0 0 12px; }
.document-content ul, .document-content ol { padding-left: 22px; }
.document-content li + li { margin-top: 7px; }
.document-content dt { margin-top: 12px; font-weight: 700; }
.document-content dd { margin: 2px 0 0; }
.document-list { display: grid; gap: 10px; padding: 0; list-style: none; }
.document-list a { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 58px; padding: 13px 16px; border: 1px solid var(--line); border-radius: 16px; color: var(--ink); background: rgba(255,255,255,.42); font-weight: 700; line-height: 1.2; text-decoration: none; }
.document-list a::after { content: "→"; color: var(--forest); }
.document-image { display: block; width: 100%; height: auto; margin: 16px 0; border: 1px solid var(--line); border-radius: 14px; background: white; }
.requisites { display: grid; grid-template-columns: minmax(110px,.8fr) minmax(0,1.4fr); gap: 8px 14px; }
.requisites dt { margin: 0; color: var(--muted); }
.requisites dd { overflow-wrap: anywhere; }
.source-links a { overflow-wrap: anywhere; }
.document-footer { margin-top: 34px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--muted); font-size: 13px; }
@media (max-width: 430px) { .document-page { padding-inline: 16px; } .requisites { grid-template-columns: 1fr; gap: 2px; } .requisites dd + dt { margin-top: 9px; } }
@media print { html, body { background: white; } .document-page { width: 100%; max-width: none; padding: 0; background: white; } .back-link { display: none; } a { color: inherit; text-decoration: none; } }
