@font-face { font-family: Manrope; src: url('fonts/manrope-variable.ttf') format('truetype'); font-weight: 200 800; font-display: swap; }
* { box-sizing: border-box; }
body { margin: 0; color: #22272b; background: #fff; font-family: Manrope,sans-serif; line-height: 1.75; }
a { color: #35452a; text-underline-offset: 4px; }
header { max-width: 1120px; margin: auto; padding: 28px 32px; display: flex; justify-content: space-between; gap: 24px; align-items: center; border-bottom: 1px solid #e4e8eb; }
.document-brand { display: flex; align-items: center; gap: 12px; color: #15191c; font-size: 22px; font-weight: 750; text-decoration: none; letter-spacing: -.03em; }
.back-link { min-height: 44px; display: inline-flex; align-items: center; font-size: 14px; }
main { max-width: 800px; margin: 64px auto 80px; padding: 0 32px; }
h1 { font-size: clamp(30px,4vw,44px); line-height: 1.18; letter-spacing: -.03em; font-weight: 650; margin: 0 0 20px; text-wrap: balance; }
.document-intro { font-size: 18px; color: #555f67; margin-bottom: 32px; }
.document-draft { background: #f0f3f4; padding: 24px; border-radius: 12px; font-size: 14px; line-height: 1.65; }
.document-draft strong { font-weight: 650; }
.document-draft p { margin: 8px 0 0; }
section { margin-top: 48px; }
h2 { font-size: 23px; line-height: 1.35; letter-spacing: -.02em; margin-bottom: 20px; font-weight: 650; }
p { font-size: 16px; margin: 16px 0; }
.operator-details { margin: 24px 0; font-size: 14px; line-height: 1.65; }
.operator-details>div { display: grid; grid-template-columns: 160px 1fr; gap: 20px; padding: 14px 0; border-bottom: 1px solid #e4e8eb; }
dt { color: #58636b; } dd { margin: 0; overflow-wrap: anywhere; }
footer { max-width: 800px; margin: auto; padding: 24px 32px 40px; border-top: 1px solid #e4e8eb; display: flex; gap: 8px 32px; flex-wrap: wrap; font-size: 14px; }
footer a { min-height: 44px; display: flex; align-items: center; }
:focus-visible { outline: 2px solid #496626; outline-offset: 4px; }
::selection { background: #cbfe70; color: #172116; }
@media(max-width:650px) { header { padding: 20px; flex-wrap: wrap; gap: 8px 20px; } main { margin: 36px auto 56px; padding: 0 24px; } h1 { font-size: 30px; } h2 { font-size: 21px; } .document-intro { font-size: 16px; } .document-draft { padding: 20px; } .operator-details>div { grid-template-columns: 1fr; gap: 4px; } section { margin-top: 36px; } footer { padding: 20px 24px 32px; } }
