
@font-face /* Vollkorn Regular */ {
    font-family: 'Vollkorn';
    src: url('/static/fonts/vollkorn-regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face /* Vollkorn Italic */ {
    font-family: 'Vollkorn';
    src: url('/static/fonts/vollkorn-mediumitalic.woff2') format('woff2');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}
@font-face /* Vollkorn Medium */ {
    font-family: 'Vollkorn';
    src: url('/static/fonts/vollkorn-medium.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
font-size: 62.5%;  /* 1rem = 10px */
text-underline-offset: 0.13em;
text-decoration-thickness: 1px;
font-feature-settings: "lnum", "ss14", "ss17", "calt";
	/* subs, sups, numr, dnom, frac, lnum, pnum, tnum, onum, smcp, zero */
  /* Layout */
  --max-width: 90rem;
  --h-margin: calc(0.02em + 4vw);
  --v-margin: calc(0.25em + 3.5vw);

  --font-size:  clamp(1.68rem, 1vw + .2rem, 1.82rem);
  --font-small: 0.875em; 
  --line-height: 1.24;    /* 1.5 */

  /* Colors */
  --text-color: #090808;
  --light-color: #4D5150;
  --pale-color: #4D5150;

  --back-color: #dbe1e1;
  --link-color: #093062;
  --active-link: #2470d2;
  --mark-color: #f0efa8;


  /* Font-styles */
  --serif: Vollkorn, "Source Serif 4", "Source Serif Pro", "Iowan Old Style", "Sitka text", Cambria, Georgia, serif;
  --sans: Ubuntu, "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", Noto, Oxygen-Sans, Cantarell, "Helvetica Neue", Arial, sans-serif;
  --mono: "Fira Mono", "Source Code Pro", "Ubuntu Monospace", ui-monospace, Menlo, Monaco, "Cascadia Mono", "Segoe UI Mono", "Roboto Mono", "Oxygen Mono", "Droid Sans Mono", Consolas, monospace;
  --emoji: "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

/* General */

body {
  font-size: var(--font-size); 
  /* font-weight: normal;*/
  font-family: var(--serif), var(--emoji);
  color: var(--text-color);
  background: var(--back-color);
  line-height: var(--line-height);
  min-height: 80vh;
  padding: var(--v-margin) var(--h-margin);
  hanging-punctuation: first;
}

.wrapper {
  max-width: var(--max-width);
  margin: 0  auto;
  /* display: flex;
  flex-direction: column;
  width: 100%;    */
  /*margin: 0 auto; */
}

/* section > * + * { margin-top: 0.85em; } vertical spacing */

.logo {
 width: 70px;
 height: 70px;
 background-image: url('/static/images/flow.png');
 background-size: 100%;
}

main {
flex: 1; 
max-width: 33em;
}

/* Links */

a {
  color: var(--link-color);
  font-weight: bold;
  text-decoration: none;
  overflow-wrap: break-word;
}

@media (hover: hover) and (pointer: fine) {
  a:hover {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    color:var(--active-link);
  }
}

.icons a {color:var(--text-color);}
.icons a:hover {text-decoration:none; color:var(--active-link); text-shadow: none;}
a.icon-money {color:#D90202;}

article a[href*="//"]:after
{
  font-feature-settings: "sups";
  content:"°";
}
article a[href^="#"]:after {
  font-feature-settings: "sups";
  content: "§";
  }
.meta a:after, .shmuck a:after, a.ya-share2__link:after  { content:"" !important; }
 a[href^="mailto:"]:after, section a[href*="t.me"]:after { content:none } 

/* Headings */
header {padding-left: 5%;}


h1 {letter-spacing:-1px;}

article h1 {
  line-height: .86;
  margin-top: .2em;
}

h2 {
  font-size: 1.4em;
  line-height:.94;
  border-bottom: 2px solid var(--light-color);
  padding-top:.8em;
  font-style: italic; 
}

h3,h4,strong,b,dt,th {
  font-weight: 600;
}

h3,h4 {
  margin-top: .6em;
}

h3 {
  font-variant: all-small-caps;
  font-feature-settings: "smcp";
  font-size: 1.1em;
  line-height: 1;
  text-align: center;
  margin-bottom:.2em;
  letter-spacing: 1px;
}

h4 {
  font-size: 1em;
  font-weight: 700;
  line-height: 1.2;
}

/* Images */

img {
  display: block;
  max-width: 100%;
  height: auto;
  min-height: 4em;
  position: relative;
  padding: 2px;
  margin: .3em .2em;
  border: 1px solid #7C918B;
  box-shadow: 0 0 0.2em 0.1em #A6B7B3B0;
  border-radius:4px;
}

img:after, img + em {
  /* style offline images */
  content: attr(alt);
  display: grid;
  align-content: center;
  font-size: var(--font-small);
  font-style: italic;
  text-align: center;
  color: var(--light-color);
  margin-bottom:.4em;
}

p.caption {
  color: var(--light-color);
  text-align: center;
  font-size: var(--font-small);
  margin: -1.2em auto 2em;
  padding-inline: 1em;
}

img.imgzoom-loading { cursor: wait !important; }
.imgzoom-large { cursor: pointer; box-shadow: 0 0 8px rgba(0, 0, 0, .3); }
@media not (prefers-reduced-motion: reduce) {
.imgzoom-large { transition: all .4s; }
}

/* ariticle p:first-of-type { margin-top: 1em;} */

/* Lists */
ul {
list-style-type: "–  ";
margin-inline-start: 1ch;
margin: 0 0 .2em 1em;
}

ol {
  font-feature-settings: "pnum", "ss11", "ss13", "ss14"; /* pnum, tnum, onum */
  margin-inline-start: 1ch;
  margin: .4em 0 .2em .4em;
}
ol li {padding-left:.6em;}

dt {
  margin-bottom: 0.4em;
}

dd {
  margin-bottom: 0.85em;
  margin-inline-start: 2ch;
}

li + li, li ol, li ul {
  margin-top: 0.5em;
}

/* Other elements */


p {
  /* hyphenation */
  padding-top:.7em;
  hyphens: auto;
  -webkit-hyphens: auto;
  text-indent:-.1em;
  hyphenate-limit-chars: 6 2 2;
  hyphenate-limit-lines: 2;
  hyphenate-limit-last: always;
  hyphenate-limit-zone: 4%; 
  orphans:3; widows:2;
  }

  
blockquote {
  display:block;
  font-size: .9em;
  font-feature-settings: "onum", "ss11", "ss14", "ss17";
  padding: .7em 0;
  padding-inline: 2ch;
  font-style:italic;
}

blockquote > * + * {
  margin-top: 0.75em;
}

blockquote cite {
  text-align:right;
  border:none;
  line-height:.8;
  margin:0;
}
blockquote cite:before {
	font-feature-settings: "dlig";
	position: relative;
	font-size:2em;
	top: -.42em;
	right:0;
	content:"-.-";
}
.vk-wrapper {
    text-align: right;    /* Выравнивает содержимое блока по правому краю */
    margin: 10px 0;       /* Добавляет отступ сверху и снизу (настройте под свой дизайн) */
}


nav:before {
	font-size:3em;
	font-feature-settings: "dlig";
	position: relative;
	left:30%;
	content:"-.-";
	}

hr { 	border: 0;
	height: 2px;
	margin: 1em 0;
	background-image: -webkit-linear-gradient(left, transparent, #46433A, transparent); 
	background-image: -moz-linear-gradient(left, transparent, #46433A, transparent);
	background-image: -ms-linear-gradient(left, transparent, #46433A, transparent);
	background-image: -o-linear-gradient(left, transparent, #46433A, transparent);
}

small {
  font-size: var(--font-small);
}

.meta {
  display:block;
  font-style: italic;
  font-feature-settings:"onum", "ss11", "ss14", "ss17";
  text-indent: .8em;
  margin: .56em 0;
}

mark {
  background-color: var(--mark-color);
}

abbr[title] {
  cursor: help;
  text-decoration-color: var(--pale-color);
}

@media (any-pointer: coarse) {
  abbr[title]:hover:after {
    content: " (" attr(title) ")";
  }
}

a:hover abbr[title] {
  cursor: pointer;
  text-decoration-color: inherit;
}

sup, sub {
  line-height: 1;
  margin-inline-start: 0.05em;
  font-size: 0.6em;
  font-weight: bold;
}

.video {
  aspect-ratio: 16 / 9;
  width: 100%;
  margin: 1em 0 .6em -.3em;
  padding: 2px;
  border: 1px solid #7C918B;
  box-shadow: 0 0 0.2em 0.1em #A6B7B3B0;
  border-radius:4px;
}

/* Code */

code,
kbd {
  font-family: var(--mono), var(--emoji);
  font-size: 0.875em;
  overflow-wrap: break-word;
  color: var(--light-color);
}

kbd {
  border-radius: 4px;
  padding: 0.1em 0.3em;
  border-right: 1px solid var(--pale-color);
  border-bottom: 1px solid var(--pale-color);
}

pre code {
  color: inherit;
  font-size: 0.825em;
}

pre {
  margin: 1.2em auto;
  padding: 0.3em 0.6em 0.4em;
  overflow: auto;
  border-radius: 4px;
  border: 1px dotted var(--pale-color);
}

/* Tables */

table {
  border-collapse: collapse;
  font-size: var(--font-small);
  font-variant-numeric: tabular-nums;
  width: 100%;
  margin: 1.2em auto;
}

thead th {
  text-align: start;
  border-bottom: 1px solid;
}

th,
td {
  padding: 0.3em 0.5em;
  border: 1px dotted var(--pale-color);
}

/* Footnotes */
.footnotes {
  font-size: var(--font-small);
  display: inline-block;
  margin-top: var(--h-margin);
  padding-top: calc(var(--h-margin) / 2);
  border-top: 1px dotted var(--pale-color);
}

/* text cut link */
input {display: none;}
input + label { color: var(--link-color); font-weight:bold; cursor: pointer;}
input + label:after {font-feature-settings: "sups";content:"¶";}
input + label:hover {text-decoration: underline; text-decoration-thickness: 1px; color: var(--active-link);}
input:checked + label + cite { position: relative; opacity: 1; visibility: visible;}
input + label + cite { position: absolute; opacity: 0; visibility: hidden; }
cite {
/* color: var(--light-color); padding-left:1em; */
	font-size: var(--font-small);
	border-top: 2px dashed var(--pale-color); 
	display: block;	font-style: normal;
	line-height: 1.2; max-width:96%; text-align:justify;
	padding-top: 12px;
	}

nav {
	padding: 1em;

}
	
/* Posts list */

.posts { margin-inline-start: 0; margin-left: 2em;}

.posts li {
  list-style: none;
  display: grid;
  grid-template-columns: auto max-content;
  grid-template-areas: "title time";
  align-items: end;
  line-height: 1;
}

.posts li a {
  grid-area: title;
  position: relative;
  overflow: hidden;
}

.posts li a:after {
  position: absolute;
  bottom: 0.25em;
  padding-left: 1ch;
  content: " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . "
  ". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . "
  ". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ";
  text-align: right;
  color: var(--light-color);
  font-size: 0.55em;
  letter-spacing: 0.03em;
  white-space: nowrap;
}

.posts li time {
  grid-area: time;
  font-feature-settings: "onum","ss11", "ss14", "ss17";
}

.posts li a:not(:hover) {
  color: currentColor;
}

.posts li a:not(:hover) + time {
  color: var(--light-color);
} 

.posts li.paid {
  margin-left: -1.6em;  
  padding-left: 1.6em;
  background: url('/static/images/rr.png') no-repeat left center;
  background-size: 1em; /* размер иконки */
} 
