@font-face{font-family:"Source Serif 4";font-weight:200 900;font-display:swap;src:url(/fonts/source-serif-4-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Source Serif 4";font-weight:200 900;font-display:swap;src:url(/fonts/source-serif-4-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Golos Text";font-weight:400 900;font-display:swap;src:url(/fonts/golos-text-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Golos Text";font-weight:400 900;font-display:swap;src:url(/fonts/golos-text-latin-wght-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --paper:#f7f6f2; --ink:#101828; --text:#2a3342; --muted:#586070; --line:#d8d7d0; --field:#b4b3aa;
  --accent:#0b5d4b; --accent-d:#084638; --on-accent:#fff;
  --r:2px; --max:100rem; --gut:clamp(1.25rem,5vw,5rem);
  --serif:"Source Serif 4",ui-serif,Georgia,"Times New Roman",serif;
  --sans:"Golos Text",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  color-scheme:light;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(11,93,75,.15);scroll-behavior:smooth;scroll-padding-top:1.5rem}
body{margin:0;background:var(--paper);color:var(--text);font:400 1.0625rem/1.6 var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums}
::selection{background:#b9dccf;color:var(--ink)}
a{color:var(--accent);text-decoration-thickness:from-font;text-underline-offset:.2em;text-underline-position:from-font}
a:hover{color:var(--accent-d)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r)}
.skip{position:absolute;inset-inline-start:1rem;top:-4rem;background:var(--ink);color:#fff;padding:.6rem 1rem;border-radius:var(--r);z-index:5}
.skip:focus{top:1rem}
.wrap{max-width:calc(var(--max) + 2*var(--gut));margin-inline:auto;padding-inline:max(var(--gut),env(safe-area-inset-left)) max(var(--gut),env(safe-area-inset-right))}
h1,h2,h3{color:var(--ink);margin:0;text-wrap:balance}
h1,h2,h3.serif{font-family:var(--serif);font-weight:500}
h1{font-size:clamp(3rem,9vw,9rem);line-height:.98;letter-spacing:-.035em;font-optical-sizing:auto}
h2{font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.15;letter-spacing:-.015em}
h3{font-size:1.0625rem;line-height:1.3;font-weight:600}
p{margin:0;text-wrap:pretty}
.muted{color:var(--muted)}
.small{font-size:.875rem;line-height:1.5}

header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;flex-wrap:wrap;padding-block:1.25rem}
.brand img{display:block;height:2.6rem;width:auto}
nav{display:flex;flex-wrap:wrap;gap:.25rem 1.75rem}
nav a{color:var(--text);text-decoration:none;padding:.5rem 0;font-size:.95rem}
nav a:hover{color:var(--accent);text-decoration:underline}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:0 1.4rem;border-radius:var(--r);background:var(--accent);color:var(--on-accent);font:600 1rem/1 var(--sans);text-decoration:none;border:1px solid var(--accent);cursor:pointer;transition:background-color .15s,border-color .15s,scale .15s}
.btn:hover{background:var(--accent-d);border-color:var(--accent-d);color:var(--on-accent)}
.btn:active{scale:.96}
.btn.quiet{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.quiet:hover{background:var(--ink);color:#fff;border-color:var(--ink)}

.sec{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:1.25rem clamp(1.5rem,5vw,4rem);padding-block:clamp(2.75rem,7vw,5.5rem);border-top:1px solid var(--line)}
@media (max-width:52rem){.sec{grid-template-columns:1fr}}

footer.site{border-top:1px solid var(--line);padding-block:1.5rem 2.5rem;color:var(--muted);font-size:.875rem}
footer.site .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem}
footer.site a{color:var(--muted)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
