/* Layout and type copied from the Wix site (www.rustamjamilov.com, October 2026):
   a 980px page column, header 87px with a 5px grey bar, Palatino 19px, links #8B0000. */

* { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: #fff;
  color: #000;
  font-family: "Palatino Linotype", Palatino, "Book Antiqua", "URW Palladio L", "TeX Gyre Pagella", serif;
  font-size: 19px;
}

a { color: inherit; text-decoration: none; }
.red { color: #8B0000; }
.u { text-decoration: underline; }
.s22 { font-size: 22px; }

/* Header */
.site-header {
  background: #fff;
  border-bottom: 5px solid #c7c7c7;
}
.header-inner {
  position: relative;
  width: 980px;
  height: 87px;
  margin: 0 auto;
}
.name {
  position: absolute;
  top: 12px;
  left: 359px;
  width: 272px;
  margin: 0;
  font-size: 34px;
  font-weight: normal;
  line-height: normal;
  white-space: nowrap;
}
.menu {
  position: absolute;
  top: 12px;
  left: 669px;
  width: 451px;
  display: flex;
  gap: 9px;
}
.menu a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 47px;
  border-bottom: 2px solid transparent;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 20px;
  letter-spacing: 0.1em;
}
.menu a:nth-child(1) { width: 137px; }
.menu a:nth-child(2) { width: 132px; }
.menu a:nth-child(3) { width: 164px; }
.menu a[aria-current="page"] { border-bottom-color: #000; }
.menu a:hover { border-bottom-color: #8B0000; }

/* Page column */
.page {
  width: 980px;
  margin: 0 auto;
}
/* Wix sets each paragraph in a sans-serif face and the text in Palatino spans inside it;
   the paragraph's face still shapes the line box, so the same two layers are kept here. */
.text p { margin: 0; font-family: sans-serif; font-size: 19px; line-height: 1.2em; }
.text p.f22 { font-size: 22px; line-height: calc(1.2em + 0.8px); }
.text p.l16 { line-height: 1.6em; }
.text p.ln { line-height: normal; }
.text .t { font-family: "Palatino Linotype", Palatino, "Book Antiqua", "URW Palladio L", "TeX Gyre Pagella", serif; font-size: 19px; }
.text .t .s22 { font-size: 22px; }

/* Research: photo and positions, then the list of papers */
.intro {
  display: grid;
}
.intro > * {
  grid-area: 1 / 1;
  align-self: start;
  justify-self: start;
  position: relative;
}
.photo {
  display: block;
  width: 185px;
  height: 228px;
  margin: 25px 0 58px;
  left: -90px;
}
.info {
  width: 935px;
  min-height: 233px;
  margin: 25px 0 53px;
  left: 185px;
}
.intro > .rule {
  grid-area: 2 / 1;
  width: 1210px;
  height: 5px;
  left: -90px;
  border-top: 1px solid #757575;
}
.list {
  position: relative;
  width: 1161px;
  margin-top: 27px;
  left: -90px;
}
.single .text { width: 980px; margin-bottom: 44px; }

/* Narrower screens. Wix fixes the page at 980px and cuts off the Research block; here it stays on screen. */
@media (max-width: 1259px) {
  /* the menu ends 140px right of the 980px column: slide the header left just enough to keep it on screen */
  .header-inner { transform: translateX(min(0px, calc((100vw - 980px) / 2 - 156px))); }
  .photo, .intro > .rule, .list { left: max(-90px, calc((980px - 100vw) / 2 + 16px)); }
  .info { left: calc(max(-90px, calc((980px - 100vw) / 2 + 16px)) + 275px); width: auto; max-width: 935px; }
  .intro > .rule { width: min(1210px, calc(100vw - 32px)); }
  .list { width: auto; max-width: 1161px; }
}
@media (max-width: 1011px) {
  .header-inner {
    transform: none;
    width: auto;
    height: auto;
    padding: 10px 16px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .name, .menu { position: static; width: auto; }
  .name { white-space: normal; text-align: center; }
  .menu { gap: 4px; flex-wrap: wrap; justify-content: center; }
  .menu a, .menu a:nth-child(n) { width: auto; height: 44px; padding: 0 12px; font-size: 17px; }
  .page { width: auto; padding: 0 16px; }
  .intro { display: block; }
  .intro > * { position: static; }
  .photo { margin: 24px auto 20px; }
  .info { width: auto; max-width: none; min-height: 0; margin: 0 0 24px; }
  .intro > .rule { width: auto; height: 1px; }
  .list { position: static; width: auto; max-width: none; margin-top: 24px; padding-bottom: 32px; }
  .single .text { width: auto; }
  .text p { overflow-wrap: anywhere; }
  /* the papers are indented with spaces; give wrapped lines the same indent */
  .text p.ind { padding-left: 33px; text-indent: -33px; }
}
@media (max-width: 360px) {
  .menu a, .menu a:nth-child(n) { padding: 0 7px; font-size: 16px; letter-spacing: 0.05em; }
}
